一个变量一个值(正常赋值)
v = 1 ''' # 结果,v: 1 '''
多个变量一个值(连续赋值)
x = y = z = 0 ''' # 结果,x: 0, y: 0, z: 0 '''
# 注意:所赋值不要是可变对象 x = y = z = [] ''' # Python的变量名只是代号
# x、y、z 都指向同一个[] # x 变化时,y 和 z 也会变化 '''
一个变量多个值(序列打包)
t = 1, 2, 3 ''' # 首先,Python会先自动将这多个值打包成元组 # 然后,再赋值给变量 # 所以,这样赋值后的变量的类型为元组(tuple)
# 结果,t: (1, 2, 3) '''
多个变量多个值(序列解包)
# 等号右边是与变量名个数相同的多个常量值 l, m, n = 1, 2, 3 ''' # 首先,先将这多个值进行序列打包成元组 # t = (1, 2, 3) # 然后,给变量赋值 # l = t[0]; m = t[1]; n = t[2] # 结果,l: 1, m: 2, n: 3 ''' # 等号右边也可以是一个包含多个值的序列 l, m, n = [1, 2, 3] # 等号右边也可以是字符串序列 l, m, n = 'ABC'
# 应用:交换变量的值 a = 1 b = 2 a, b = b, a ''' # 首先,t = (b, a) # 然后,a = t[0]; b = t[1] # 注意,不用设置中间变量 # 结果,a: 2, b: 1 '''
# 注意:计算后才赋值 a = 1 b = 2 a, b = b, a + b ''' # 首先,t = (b, a + b) # 然后,a = t[0]; b = t[1] # 结果,a: 2, b: 3 '''
# 技巧:想丢弃某个值可以用特殊变量名 l, _, ign = 1, 2, 3 ''' # 需求,只想要第一个值,后面的两个值丢弃 # 方法,将想要丢弃的值用一个特殊的变量名接收 # 例如,_、ign(ignore) '''