文章目录
字典关键字拆包装包
students = {'001':('蔡徐坤',21),'002':('王源',20),'003':('周惟',18)}
def print_boy(name,**persons):#**把关键字装到字典里
print('{}喜欢的小鲜肉是'.format(name))
if isinstance(persons,dict):
values = persons.values()
print(values)
for name,age in values:
print('{}的年龄是{}'.format(name,age))
print_boy('蕊蕊',**students)#将字典students拆分成关键字模式
结果为:
蕊蕊喜欢的小鲜肉是
dict_values([('蔡徐坤', 21), ('王源', 20), ('周惟', 18)])
蔡徐坤的年龄是21
王源的年龄是20
周惟的年龄是18
举例,当函数参数为关键字参数时,当需要传入一个字典,需要将它拆分成关键字参数,在前面加上**就可以了
def aa(**kwargs):#**会将关键字参数拆分成字典
print(kwargs)#输出字典
aa(a=1,b=2)
#如果在开发的时候,已知一个字典
dict1={'a':2,'b':3}
aa(**dict1)
结果为:
{'a': 1, 'b': 2}
{'a': 2, 'b': 3}
def bb(a,b,*c,**d):#*和**为可变参数,可以传值也可以不传,不传值时为空元组和空字典,参数一定要按顺序传入。
print(a,b,c,d)
bb(1,2,3,4)
bb(1,2,3,e=1)
bb(1,2)
1 2 (3, 4) {}
1 2 (3,) {'e': 1}
1 2 () {}