回顾第 1 章中我们所写的第一个程序:
其中”Hello World!”就是以字面值的形式指明 print 命令要操作的数据。我们也可以这 样做:
>>> print s
Hello World!
这里先将数据”Hello World!”存储在变量 s 当中,然后通过引用 s 来指明 print 要操 作的数据。
>>> print 3.1416
3.1416
>>> p = 3.1416
字面值的意义是不可改变的,而变量的意义(即变量存储的值)是可以改变的。例如, 我们接着上面的语句继续操作数据 p:
这里我们将变量 p 的值改成了 2.71828,因此 p 所表示的数据被改变了。 在程序中直接使用字面值通常不是好的做法,因为这会导致程序缺乏一般性,即只适用
于特定计算。如果要将程序应用于其他数据的计算,则必须修改程序中的字面值,这是很不 方便的。显然,使用变量可以使程序具有一般性,因为只要为变量赋予不同的值,程序就可 以对不同数据进行处理。
<变量> = <表达式>
其中等号表示赋值,等号左边是一个变量,右边是一个表达式(由常量、变量和运算符构成)。 Python 首先对表达式进行求值,然后将结果存储到变量中。如果表达式无法求值,则赋值 语句出错。一个变量如果未赋值,则称该变量是“未定义的”。在程序中使用未定义的变量 会导致错误。例如:
>>> print q
Traceback (most recent call last):
File "<pyshell#21>", line 1, in <module>
print q
并行赋值
与许多编程语言不同,Python 语言允许同时对多个变量赋值,例如:
>>> x
2
>>> y
1
而在其他编程语言中为了交换两个变量 x 和 y 的值,必须借助于一个临时变量,执行三 条赋值语句:
temp = x x = y