自己学习Python时,关于“使用任意数量的关键字实参”用法有点儿迷,现记录一下。如有不足,烦请指正。
传递任意数量的关键字实参
①已知前几个参数的确定信息,不知道余下的信息是什么
②存储类别为——字典
比如:
采集一个学生的信息,必须采集的有:身高、体重;剩下的信息按照需要采集。
就可以用以下的例子:
def info(height, weight, **others):
student = {}
student['身高'] = height #身高和体重是确定的信息
student['体重'] = weight
for k, v in others.items(): #其它的信息不确定
student[k] = v
return student
#定义两个学生字典,二者都有身高和体重信息。剩下的信息随机指定
student_1 = info('157cm', '49kg', 姓名 = '张三', 性别 = '女')
student_2 = info('183cm', '61kg', 专业 = 'GIS', 姓名 = '李四', 学号 = 1007, 性别 = '男')
print(student_1)
for k, v in student_1.items():
print(k, v, sep = ' : ')
print("\n")
print(student_2)
for k, v in student_2.items():
print(k, v, sep = ' : ')
代码的输出为:
{'身高': '157cm', '体重': '49kg', '姓名': '张三', '性别': '女'}
身高 : 157cm
体重 : 49kg
姓名 : 张三
性别 : 女
{'身高': '183cm', '体重': '61kg', '专业': 'GIS', '姓名': '李四', '学号': 1007, '性别': '男'}
身高 : 183cm
体重 : 61kg
专业 : GIS
姓名 : 李四
学号 : 1007
性别 : 男