元组和字典的拆包是个蛇玩意?

元组和字典的拆包

什么时候需要使用到拆包?
在将一个元组变量,直接传递给args
在将一个字典变量,直接传递给kwargs
就可以使用拆包,简化参数的传递

拆包的语法:
在元组变量前。增加一个
在字典变量前,增加两个
为什么管它叫做拆包:

在这里插入图片描述
在给函数num传参数gl_nums时智能提示会高亮显示args,表示给ags传参。
在这里插入图片描述
而在给它传第二个参数时还是高亮显示的是args,表示给args传参,输出结果都在一个元组中
在这里插入图片描述
这是为啥嘞?因为没有明确的指定给那个多值参数传参所以,两个变量的值都传给了,*args

在这里就可以使用拆包了

# 定义元组变量/字典变量
gl_nums = (1,2,3)
gl_dict = {'name':'小明','age':18}
num(*gl_nums,**gl_dict)
# 拆包的语法
# 在元组变量前,增加一个*
# 在字典变量前,增加两个*
# 这样就解决了元组变量和字典变量在一个参数里的问题

在这里插入图片描述
如果不使用拆包语法
则把元组变量,和字典变量中的值这样写到函数的实参中

在这里插入图片描述
拆包语法的好处,简化参数的传递,

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页