变量的声明和赋值
变量的声明和赋值用于将一个变量绑定到一个对象上,格式如下:
变量名 = 表达式
最简单的表达式就是字面量。比如:a = 123 。 运行过程中,解释器先运行右边的表达式,
生成一个代表表达式运算结果的对象;然后,将这个对象地址赋值给左边的变量。
【操作】变量在使用前必须先被初始化(先被赋值)
>>> my_name
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
my_name
NameError: name 'my_name' is not defined
变量 my_name 在被使用前未做赋值,因此报错:’my_name’is not defined。
删除变量和垃圾回收机制
可以通过 del 语句删除不在使用的变量。
删除变量示例
>>> a=123
>>> del a
>>> x
Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
x
NameError: name 'x' is not defined
>>> a
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
a
NameError: name 'a' is not defined
如果对象没有变量引用,就会被垃圾回收器回收,清空内存空间。
链式赋值
链式赋值用于同一个对象赋值给多个变量。
x=y=123 相当于:x=123; y=123
系列解包赋值
系列数据赋值给对应相同个数的变量(个数必须保持一致)
a,b,c=4,5,6 相当于:a=4;b=5;c=6
【操作】使用系列解包赋值实现变量交换
>>> a,b=1,2
>>> a,b=b,a
>>> print(a,b)
2 1
常量
Python 不支持常量,即没有语法规则限制改变一个常量的值。我们只能约定常量的命名规
则,以及在程序的逻辑上不对常量的值作出修改。
>>> MAX_SPEED = 120
>>> print(MAX_SPEED)
120
>>> MAX_SPEED = 140 #实际是可以改的。只能逻辑上不做修改。
>>> print(MAX_SPEED)
140