1.链式赋值
多个变量同时指向一个数据的内存地址时使用。
num0 = num1 = num2 = 666
print(num0, num1, num2)
num2 = 111
print(num0)
2.交叉赋值
多个变量之间进行互换数据。
x = 10
y = 20
z = 30
print(x, y, z)
z, x, y = x, y, z
print(z, x, y)
3.解压赋值
将一个容器类型类型的元素分别赋值给对应的变量名。
全部解压:变量名能够与容器类型中元素数量对应。
指定解压:使用*号将多余的元素压缩赋值给*后的变量名。(如果用不上这些数据变量名建议使用_下划线)
* 号后面的值一定是一个列表
3.1全部解压
list1 = [1, 2, 3, 4, 5, 6]
num1, num2, num3, num4, num5, num6 = list1
print(num1, num2, num3, num4, num5, num6)
3.2指定解压
list1 = [1, 2, 3, 4, 5, 6]
num1, *_, num6 = list1
print(num1)
print(_)
print(num6)
1
[2, 3, 4, 5]
6
list1 = [1, 2]
num1, *_ = list1
print(num1, _)
list1 = [1]
num1, *_ = list1
print(num1, _)
dic = {'k1': 'v1', 'k2': 'v2', 'k3': 'v3'}
*_, d1 = dic
print(_, d1)
*_, d1 = dic.values()
print(_, d1)
*_, d1 = dic.items()
*_, d1 = dic.items()
print(_, d1)
list1 = [1, 2, 3, 4, 5, 6]
num1, _, _, *_ = list1
print(num1)
print(_)
"""
1, 2, 3, 4, 5, 6 全部解压出来
从左往右赋值给变量
num1 = 1
_ = 2
_ = 3
_ = [4, 5, 6]
1
[4, 5, 6]
"""
4.练习
1.将值10一次性赋值给变量名x、y、z
2.互换它们的值
x = 10
y = 20
3.我们只需要将列表中的字符串一次性赋值给一个变量名
name = ['kid', 'qqq', 'aa',1 ,2]