Python传递任意数量实参的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!

传递任意数量的实参

形参前加一个 * ,Python会创建一个已形参为名的空元组,将所有收到的值都放到这个元组中:

defmake_pizza(*toppings):print("\nMakingapizzawiththefollowingtoppings:")fortoppingintoppings:print("-"+topping)make_pizza('pepperoni')make_pizza('mushroom','greenpeppers','extracheese')

不管函数收到多少实参,这种语法都管用。

1. 结合使用位置实参和任意数量实参

defmake_pizza(size,*toppings):print("\nMakinga"+str(size)+"-inchpizzawiththefollowingtoppings:")fortoppingintoppings:print("-"+topping)make_pizza(16,'pepperoni')make_pizza(12,'mushroom','greenpeppers','extracheese')

运行结果:

Makinga16-inchpizzawiththefollowingtoppings:-pepperoniMakinga12-inchpizzawiththefollowingtoppings:-mushroom-greenpeppers-extracheese

2. 使用任意数量的关键字实参

defbuild_profile(first,last,**user_info):profile=dict()profile['first_name']=firstprofile['last_name']=lastforkey,valueinuser_info.items():profile[key]=valuereturnprofileuser_profile=build_profile('albert','einstein',location='princeton',field='physic')print(user_profile)

形参**user_info中的两个星号让python创建了一个名为user_info的空字典。

感谢各位的阅读!看完上述内容,你们对Python传递任意数量实参的方法大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注亿速云行业资讯频道。