一、拆包定义
拆包,就是把元组或者字典中的数据单独的拆分出来,赋值给其他的变量。
如函数通过retrune返回列表、元组、字典返回数据,接收时可以直接用变量接收,过程就是拆包。
二、元组拆包
元组拆包过程中,按从做到有的顺序一次赋值给对应变量。
def sum_avg(*ages):
sum_1 = 0
for i in ages:
sum_1 += i
avg_1 = sum_1 / len(ages)
tuple = (sum_1, avg_1) #元组
return tuple #返回元组
# 定义两个变量接收元组中的两个数据(拆包)
sum,avg = sum_avg(10,20)
# 打印两个变量
print(sum,avg) #30 15.0
二、字典拆包
注意:接收的变量数与拆包时字典中元素数量要一致。
# 2.字典拆包
dict1 = {'name': '孙权', 'age': 18,'sex':'男'}
n1,n2,n3 = dict1
print(n1,n2,n3) #name age sex
print(dict1[n1],dict1[n2],dict1[n3]) #孙权 18 男
三、拆包案例
交换两个变量的值
方法1:借助第三方变量
a = 1
b = 2
c = 0
c = a
a = b
b =c
print(a,b) #2 1
方法2:运算方法
a = a + b # a=3 b=2
b = a - b # a=3 b=1
a = a - b # a=2 b=1
方法3:拆包方法
a,b = b,a
print(a,b) #2 1