内容一:可变参数和参数解包区别
1) 可变参数是在形参中,通过 ,* 来实现
2) 参数解包是在实参中,通过 ,* 来实现
内容二:可变参数的使用案例
2.1 进入 Python3 环境
# python3
>>>
2.2 创建 1 个输出可变参数内容的对象
>>> def demo(*args,**kwargs):
... print(args)
... print(kwargs)
...
(
补充:
1) 这里以创建 demo 对象为例
2) 这里 1 个 * 代表接收的是 1 个元组,2 个 ** 代表接收的是 1 个键值对从而形成 1 个字典
)
2.3 测试输出可变参数内容的对象
>>> demo()
()
{}
(补充:这里 2 个小括号 “()” 是指元组,2 个大括号是 “{}” 是指字典)
2.4 让输出可变参数内容的对象处理元组
>>> demo(1,2,3)
(1, 2, 3)
{}
(补充:这里以处理元组 1,2,3 为例)
2.5 让输出可变参数内容的对象处理元组和字典
>>> demo(1,2,3,c='2')
(1, 2, 3)
{'c': '2'}
(补充:这里以处理元组 1,2,3 和字典 c=’2′ 为例)
内容三:参数解包的使用案例
3.1 进入 Python3 环境
# python3
>>>
3.2 创建 1 个进行参数解包的对象
>>> def demo(a,b,c):
... print(a,b,c)
...
3.3 测试进行参数解包的对象
>>> demo(1,2,3)
1 2 3
3.4 让进行参数解包的对象处理元组
>>> args = (1,2,3)
>>> demo(*args)
1 2 3
3.5 让进行参数解包的对象处理字典
>>> kwargs1 = { 'a':'a1','b':'b2','c':'c3'}
>>> demo(**kwargs1)
a1 b2 c3