变量赋值
x,y,z = 1,2,3
灵活使用,可以减少代码量
key,value = dict.popitem()
*星号的使用可以代表多个值
#正常
x,y,z = 1,2,3
#参数列表数目不匹配
x,y,z = 1,2,3,4
Traceback (most recent call last):
File "<input>", line 1, in <module>
ValueError: too many values to unpack (expected 3)
x,y,z = 1,2
Traceback (most recent call last):
File "<input>", line 1, in <module>
ValueError: not enough values to unpack (expected 3, got 2)
#星号来收集
x,y,*z = 1,2,3,4
z
[3, 4]
#两个星号不可以!
*x,y,*z = 1,2,3,4,5,6
File "<input>", line 1
SyntaxError: two starred expressions in assignment
链式赋值
x = y = z = '你好,中国'
运算赋值
+= -= *= /=
x 1 x += 3 x 4 x -= 1 x 3 x *= 7 x 21 x /= 9 x 2.3333333333333335
字符串运算
x = "你好" x '你好' x += ",悟空。" x '你好,悟空。' x -= "哈哈" Traceback (most recent call last): File "<input>", line 1, in <module> TypeError: unsupported operand type(s) for -=: 'str' and 'str' x -= "空。" Traceback (most recent call last): File "<input>", line 1, in <module> TypeError: unsupported operand type(s) for -=: 'str' and 'str' x *= "哈哈" Traceback (most recent call last): File "<input>", line 1, in <module> TypeError: can't multiply sequence by non-int of type 'str' x *= 2 x '你好,悟空。你好,悟空。' x /= 3 Traceback (most recent call last): File "<input>", line 1, in <module> TypeError: unsupported operand type(s) for /=: 'str' and 'int'