Python中实现传递未知数量的函数参数
作者:jaycain
这篇文章主要介绍了Python中实现传递未知数量的函数参数方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
Python传递未知数量的函数参数
元祖
方式:*形参名
举例:
def make_pizza(*toppings): """概述要制作的比萨""" print("\nMaking a pizza with the following toppings:") for topping in toppings: print("- " + topping) make_pizza('pepperoni') make_pizza('mushrooms', 'green peppers', 'extra cheese')
形参名*toppings中的星号让Python创建一个名为toppings的空元组,并将收到的所有值都封装到这个元组中。
任意关键字参数
方式:**形参名
举例:
def build_profile(first, last, **user_info): """创建一个字典,其中包含我们知道的有关用户的一切""" profile = {} profile['first_name'] = first profile['last_name'] = last for key, value in user_info.items(): profile[key] = value return profile user_profile = build_profile('albert', 'einstein', location='princeton',field='physics') print(user_profile)
形参**user_info中的两个星号让Python创建一个名为user_info的空字典,并将收到的所有名称—值对都封装到这个字典中。
python传递任意数量的参数
理论
**var 接收的是字典,*var接受的的是多个变量
代码
1. *
def get_user(*user): """传递参数""" return user print(get_user('user1', 'user2'), type(get_user('user1', 'user2')))
运行结果如下图所示
2. **
def get_user(**user): """传递参数""" return user print(get_user(user1='usera', user2='user2'), get_user(user1='usera', user2='user2'))
*注意:传递的参数必须要是上面这种形式,否则会报错
运行结果如下图所示
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。