交换值:
a,b = 1,2 相当于 a.b=(1,2) 右边是一个元组,a,b 将元祖(1,2)解包成 a=1,b=2
>>> a,b=1,2
(1, 2)
>>> a
1
>>> b
2
>>> a,b = b,a
>>> a,b
(2, 1)
>>> a
2
>>> b
1
例.定义一个函数,能够输入字典和元组。将字典的值(value) 和 元组的值交换,交换结束后,打印并且返回 字典和元祖。
di = {'a':1,'b':2,'c':3}
tu = (4,5,6)
def exchange(*arg,**kwargs):
t = list(arg) # 元组不可变,不能进行重新赋值,变成了列表
d = kwargs
print('t=',t,'d=',d) #1.拿到 元组、字典
n = 0 #用来循环的,拿到tu 的value
#2.拿到所有的value
for i in d.keys():
print(d[i]) # dict value
print( t[n]) #tuple value
##3.交换
d[i],t[n] = t[n],d[i]
n += 1
t = tuple(t) # 4.list 转换为tuple
print('t=',t,'d=',d)
return t,d
exchange(1,2,3,a=11,b=22,c=33)
>>> t= (11, 22, 33) d= {'a': 1, 'b': 2, 'c': 3}