定义一个函数,传入一个字典和一个元组,将字典的值(key不变)和元组的值交换,返回交换后的字典和元组

知识点:
zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表
li=[3,4,5]
t=(7,8,9)
print(list(zip(li,t)))
print(dict(zip(li,t)))

运行截图:

例1:

def f(a,b):
    print(a)
    print(b)
    # 先获取对应的元素
    b_keys=b.keys()  # 获取key
    b_values=b.values() # 获取values
    # zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。
    print(list(zip(b_keys,a)))
    print('....................................')
    d=dict((zip(b_keys,a)))  # zip 组成新的一个元组   dict:字典形式
    t=tuple(b_values)
    return d,t

# 上面返回了了几个就需要几个来接受
d,t=f((1,2,3),{'name':'小明','age':18,'sex':'男'})
# print(d,t)
print(d)
print(t)

 运行截图:

例2:不定长参数

def f(*args,**kwargs): # 传入不定长参数
    # print(a)
    # print(b)
    # 先获取对应的元素
    b_keys=kwargs.keys()  # 获取key
    b_values=kwargs.values() # 获取values
    # print(list(zip(d_keys,a)))
    d=dict((zip(b_keys,args)))  # zip 组成新的一个元组   dict:字典形式
    t=tuple(b_values)
    return d,t

# 上面返回了了几个就需要几个来接受
d,t=f(*(1,2,3),**{'name':'小明','age':18,'sex':'男'})
# print(d,t)
print(d)
print(t)

  

posted @ 2023-08-24 11:15  人生努力努力努力就好  阅读(18)  评论(0)    收藏  举报