1、定义函数时,用*:包裹位置传递
根据位置将传递进来的所有元素合并成一个元祖tuple
def fun(*name):
print(type(name))
print(name)
fun(1, 4, 6)
result:
<class 'tuple'>
(1, 4, 6)
2、定义函数时,用**:包裹关键字传递
根据关键字和value,将传递进来的所有值合并成一个dict
def fun(**name):
print(type(name))
print(name)
fun(a=1, b=2, c=4)
result:
<class 'dict'>
{'a': 1, 'b': 2, 'c': 4}
3、解包裹:在调用函数时,传入的tuple或dict用*或**修饰,让他的每一个元素按照位置或关键字传入
def fun(a, b, c):
print(a, b, c)
args=(1,3,4)
dict = {'a':1,'b':4,'c':5}
fun(*args)
fun(**dict)
result:
1 3 4
1 4 5