0%

第二章 变量和简单数据类型

2.1 Hello Python World!

1
print("Hello Python World!")

运行上述代码时,你将看到如下输出:

1
Hello Python World!

编写程序时,编辑器会以各种方式突出程序的不同部分。这种功能称为语法高亮。

2.2 变量

1
2
message = "Hello Python World!"
print(message)

运行这个程序,输出与以前相同:

1
Hello Python World!

我们添加量一个名为message 的变量。每个变量都指向一个——与该变量相关联的信息。

2.2.1 变量的命名和使用

  • 变量名只能包含字母、数字和下划线。变量名能以字母或下划线打头,但不能以数字打头。
  • 变量名不能包含空格,但能使用下划线来分隔其中的单词。
  • 不要将Python关键字和函数名作为变量名,即不要使用Python保留用于特殊用途的单词。
  • 变量名应该既简短又具有描述性。
  • 慎用小写字母l和大写字母O,因为它们可能被人看错成数字1和0。

2.2.2 使用变量时避免命名错误

  • 名称错误通常意味着两种情况:要么是使用变量前忘记给它赋值,要么是输入变量名时拼写不正确。

2.2.3 变量是标签

  • 变量是可以赋给值的标签,也可以说变量指向特定的值。

2.3 字符串

字符串就是一系列字符。在Python中,用引号括起的都是字符串,其中的引号可以是单引号,也可以是双引号。如:

1
2
"This is a string."
'This is also a string'

2.3.1 使用方法修改字符串的大小写

  • 方法title()以首字母大写的方式显示每个单词,即将每个单词的首字母都改写为大写。
1
2
name = "normal people"
print(name.title())

输出结果为:

1
Normal People
  • 方法upper()将字符串改为全部大写。
1
2
name = "Normal People"
print(name.upper())

输出结果为:

1
NORMAL PEOPLE
  • 方法lower()将字符串改为全部小写。
1
2
name = "Normal People"
print(name.lower())

输出结果为:

1
normal people

2.3.2 在字符串中使用变量

  • 要在字符串中插入变量的值,可在前引号前加上字母f,再将要插入的变量放在花括号内。这样,当Python显示字符串时,将把每个变量都替换为其值。
1
2
3
4
first_name = "normal"
last_name = "people"
full_name = f"{first_name} {last_name}"
print(full_name)

这种字符串名为f字符串。f是format(设置格式)的简写,因为Python通过把花括号内的变量替换为其值来设置字符串的格式。

输出结果为:

1
normal people

2.3.3 使用制表符或换行符来添加空白

  • 要在字符串中添加制表符,可使用字符组合\t
1
2
print("Python")
print("\tPython")

输出结果为:

1
2
Python
Python
  • 要在字符串中添加换行符,可使用字符组合\n
1
print("Languages:\nPython\nC\nJava")

输出结果为:

1
2
3
4
Languages:
Python
C
Java

2.3.4 删除空白

  • 删除字符串开头的空白lstrip()
1
2
name = "  normal people  "
print(name.lstrip())

输出结果为:

1
'normal people  '
  • 删除字符串末尾的空白rstrip()
1
2
name = "  normal people  "
print(name.rstrip())

输出结果为:

1
'  normal people'
  • 删除字符串两端的空白strip():
1
2
name = "  normal people  "
print(name.rstrip())

输出结果为:

1
'normal people'

2.4 数

在编程中,经常使用数来记录得分、表示可视化数据、存储Web应用信息,等等。

2.4.1 整数

  • 在Python中,可对整数执行加(+)减(-)乘(*)除(/)运算。
1
2
3
4
print(2 + 3)
print(3 - 2)
print(2 * 3)
print(3 / 2)

输出结果为:

1
2
3
4
5
1
6
1.5

进行除法运算时,分母不能为0

其他语言中如Java中,两个整数相除结果还是整数。如:3 / 2 = 1, 4 / 5 = 0

  • Python使用两个乘号(**)表示乘方运算:
1
print(3**2)

输出结果为:

1
9
  • Python还支持运算次序,因此可在同一个表达式中使用多种运算。还可以使用圆括号来修改运算次序,让Python按你指定的次序执行运算:
1
2
print(2 + 3 * 4)
print((2 + 3) * 4)

输出结果为:

1
2
14 
20

在这些示例中,空格不影响Python计算表达式的方式。

2.4.2 浮点数

Python将所有带小数点的数称为浮点数。它指出了这样一个事实:小数点可以出现在数的任何位置。

1
2
3
print(0.1 + 0.1)
print(2 * 0.1)
print(0.2 + 0.1)

输出结果为:

1
2
3
0.2
0.2
0.30000000000000004

但需要注意的是,结果包含的小数位数可能是不确定的。如第三个输出结果

2.4.3 整数和浮点数

  • 将任意两个数相除时,结果总是浮点数,即便这两个数都是整数且能整除:
1
print(4 / 2)

输出结果为:

1
2.0
  • 在其他任何运算中,如果一个操作数是整数,另一个操作数是浮点数,结果也总是浮点数:
1
2
3
print(1 + 2.0)
print(2 * 3.0)
print(3.0 ** 2)

输出结果为:

1
2
3
3.0
6.0
9.0

无论是哪种运算,只要有操作数是浮点数,Python默认得到的总是浮点数,即便结果原本为整数也是如此。

2.4.4 数中的下划线

书写很大的数时,可使用下划线将其中的数字分组,使其更清晰易读:

1
print(14_000_000_000)

输出结果为:

1
14000000000

2.4.5 同时给多个变量赋值

可在一行代码中给多个变量赋值,这有助于缩短程序并提高其可读性。

1
2
x, y, z = 1, 2, 3
print(f"x = {x}, y = {y}, z = {z}")

输出结果为:

1
x = 1, y = 2, z = 3

2.4.6 常量

常量类似于变量,但其值在程序的整个生命周期内保持不变。Python没有内置的常量类型,但Python程序员会使用全大写来指出应将某个变量视为常量,其值始终不变:

1
MAX_CONNECTIONS = 5000

2.5 注释

注释让你能够使用自然语言在程序中添加说明。

  • 在Python中,当行注释用井号(#)标识。井号后面的内容都会被Python解释器忽略:
1
2
# 我的第一个Python程序
print("Hello Python World!")

输出结果为:

1
Hello Python World!
  • 在Python中,多行注释用三对单引号(‘’’ ‘’’)或双引号(“”” “””)标识。引号内的内容都会被Python解释器忽略:
1
2
3
4
5
'''
我的第一个Python程序
你好 Python!
'''
print("Hello Python World!")

输出结果为:

1
Hello Python World!
1
2
3
4
5
"""
我的第一个Python程序
你好 Python!
"""
print("Hello Python World!")

输出结果为:

1
Hello Python World!