函数

def f(*args,x,y,**kwargs):
    print(x)
    print(y)
    print(args)
    print(kwargs)
f(11,12,13,x=5,y=10,a='like',b='python')

>>5
>>10
>>(11, 12, 13)
>>{'a': 'like', 'b': 'python'}

知识点:

顺序参数在前,关键词参数在后,*args可变顺序参数,**kwargs可变关键词参数

x,y置于可变顺序参数之后,只能被当作不可变关键词参数。

keyword-only参数另一种形式,*号之后,普通形参变成了必须给出的keyword-only参数

def fn(*,x,y):
  print(x)
  print(y)
f(x=4,y=5)
>>4
>>5

可变参数和参数默认值,keyword-only参数一般会设置参数默认值

def fn(*args,x=5):
  print(x)
  print(args)
fn(5)
>>5
>>(5,)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 如果我们接受了基于区块链的数字货币,其实我们就不需要银行了?事实上你也不会听说任何比特币银行。 区块链对银行的替代...
    十三_0a46阅读 375评论 0 0
  • 正月初五洗五穷,这是我小时候常听母亲说的过年口诀,我以前一直以为是“洗五裙”,因为岷县方言多数时候前后鼻音不分。后...
    wsx书女阅读 1,020评论 4 3
  • 亲爱的葳葳: 好几天妈妈都在给自己写情书定目标,看似无暇管你。但妈妈知道临近考试前你的数学还有些思路上的小混乱,爸...
    毕丹丹阅读 154评论 0 2
  • 任务创建和删除函数 OSTaskCreate()函数 //任务优先级 #define START_TASK_PRI...
    老田2314阅读 1,013评论 0 1