Python中参数的解构
参数解构
当给函数传参的时候,可以在集合类型前使用*或**,把集合类型的参数解开,提取所有元素作为实参。提取的元素数目要和形参匹配,类型也要匹配
字典类型使用**解构关键字参数,非字典类型使用*解构
举例说明
def add(x, y): ret = x + y print(ret) add(*(4, 5)) add(*[4, 50]) add(*{4, 5})
运行结果
9 54 9
迭代器的解构
def add(*iterable): ret = 0 for x in iterable: ret += x return ret print(add(*range(10)))
运行结果
45
字典类型参数的解构
def add(x, y): ret = x + y print(ret)
d1={'x':4,'y':5}
add(**d1)
错误的解构
def add(x, y): ret = x + y print(ret) d2={'x1':4,'y1':5} add(**d2)
运行结果
TypeError: add() got an unexpected keyword argument 'y1'
posted on 2020-10-08 13:45 hopeless-dream 阅读(230) 评论(0) 编辑 收藏 举报