本文共 1520 字,大约阅读时间需要 5 分钟。
Linxuxlj 机械工程师学编程 今天
传递任意数量参数
有时候,你预先不知道需要传入多少参数,此时我们应该怎么做呢?
def basketball_player(*players): print(players)basketball_player('Yao ming')basketball_player('Yao Ming','Yi JianLin','Wang zhizhi')
第一行:定义一个篮球运动员的函数,*players代表传入任意参数
第二行:打印运动员
第三行:调用篮球运动员函数,并传入一个参数
第四行:调用篮球运动员函数,并传入三个参数
看看执行结果:
结合使用位置参数和任意数量参数
函数可以先匹配位置参数,再匹配和关键字参数
def basketball_player(numbers,*players): print("I input %d players" % numbers) print(players)basketball_player(1,'Yao ming')basketball_player(3,'Yao Ming','Yi JianLin','Wang zhizhi')
第一行:定义一个篮球运动员的函数,numbers 代表*players代表传入任意参数
第二行:打印我输入了几个参数
第三行:打印运动员
第四行:调用篮球运动员函数,传入一个表示输入数量的数字,并传入一个参数
第五行:调用篮球运动员函数,传入一个表示输入数量的数字,并传入三个参数
看看执行结果:
函数接受键值对
我们也可以将函数编写成能够接受任意数量的键值对:
def players_info(p_name,**infos): info_dic = {} info_dic['name']=p_name for key,value in infos.items(): info_dic[key]=value return info_dicplayers=players_info('Yao Ming',P_height="178CM",P_score=26)print(players)
第一行:定义一个pets_name 函数
第二行:通过循环遍历传入的列表
第三行:打印每个遍历的元素
第四行:我们定义了一个宠物的列表
第五行:调用函数,并传入pets列表
执行结果如下:
上期答案与本期习题
1. 定义一个函数,有两个形参,这两个形参是一个字典的值,返回这个字典,调用字典并传参,打印调用的结果
def select_food(vegetable,meat): foods={ "vegetable":vegetable,"meat":meat} return foodsfood_info=select_food("Potato","Steak")print(food_info)
2.传递一个列表给函数,并在函数里面遍历这个列表,并打印列表元素
def select_food(fruits): for fruit in fruits: print(fruit) food_input=['apple','grape','strawberry']select_food(food_input)
本期习题:
1. 定义一个Cars函数,它有两个形参,一个是 car_color,另一个是*car_brand. 调用函数给车颜色传入白色,另外传递BMW、Benz、Audi 三个实参。
更多免费资料,请关注公众号
转载地址:https://blog.csdn.net/weixin_31990755/article/details/112608811 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!