首页 > 其他 > 详细

命名关键字参数

时间:2019-05-22 15:48:07      阅读:64      评论:0      收藏:0      [点我收藏+]

如果要限制关键字参数的名字,可用命名关键字参数

定义命名关键字参数函数

def person(name, age, *, city, job): #和关键字参数**kw不同,命名关键字参数需要一个特殊分隔符*,*后面的参数被视为命名关键字参数
  print(name, age, city, job)

person(Jack, 24, city=Beijing, job=Engineer) #命名关键字参数必须传入参数名,这和位置参数不同。如果没有传入参数名,调用将报错


如果函数定义中已有一个可变参数,则后面跟着的命名关键字参数就不再需要一个特殊分隔符*了

def person(name, age, *args, city, job):
  print(name, age, args, city, job)

person(Jack, 24, city=Beijing, job=Engineer) #输出:Jack 24 () Beijing,Engineer


命名关键字参数可通过设置默认值来简化调用

def person(name, age, *, city=Beijing, job):
  print(name, age, city, job)

person(Jack, 24, job=Engineer) #由于命名关键字参数city具有默认值,调用时,可不传入city参数


使用命名关键字参数时,如果没有可变参数,就必须加一个*作为特殊分隔符
如果缺少*,Python解释器将无法识别位置参数和命名关键字参数

def person(name, age, city, job): # 缺少 *,city和job被视为位置参数
  pass

person(Jack, 24, city=Beijing, job=Engineer)

 

命名关键字参数

原文:https://www.cnblogs.com/shiliye/p/10906147.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!