变量与赋值语句
变量由名称(标识符)唯一标识,并遵循相同的命名约定:
- 必须以小写字符 (
a-z
) 或大写字符 (A-Z
) 或下划线 (_
) 开头。 - 后面可以跟任意数量的字母 (
a-z
,A-Z
)、数字 (0-9
) 或下划线 (_
)。 - 不能是关键字。
- 不允许使用特殊符号,如
!
,@
,#
,$
,%
等。
赋值
变量可以通过赋值语句绑定到对象(任何类型)的引用。
你可以创建一个对象(数据)并使用等号 (=
) 将其引用绑定到一个变量:
python
count = 100 # 整数
pi = 3.141 # 实数
name = "Python" # 字符串
这里,L 值(左值)指的是赋值操作符左侧的可赋值变量(count
, pi
, name
),R 值(右值)指的是赋值操作符右侧具有值的表达式(100
, 3.141
, "Python"
)。
由于变量只是引用,你可以将它们重新绑定到相同或不同类型的另一个对象:
python
a = 100 # 整数
a = 3.141 # 实数
a = "Python" # 字符串
删除
del
语句可用于解除对对象的引用。
python
>>> a = 10
>>> del a
>>> a
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'a' is not defined
访问 a
会导致 NameError
,因为指向持有值 10
的对象的引用(变量)已被删除。
如果没有任何其他变量引用该对象,该对象也会自动从内存中清除(垃圾回收)。
多重赋值
在 Python 中,多重赋值可用于简化将多个变量设置为相同值的过程:
python
>>> x = y = z = 'foo'
>>> x
'foo'
>>> y
'foo'
>>> z
'foo'
元组交换
在 Python 中,交换两个变量的值不需要临时变量。可以直接交换值(元组交换),如下所示:
python
>>> a = 'Hello'
>>> b = 'World'
>>> b, a = a, b
>>> a
'World'
>>> b
'Hello'