函数可变参数
#关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict。 def person(name,age,**kw): print(name,age,'other:',kw) #直接调用 person('sungang',27,sex='男',job='Python Engineer') #sungang 27 other: {'job': 'Python Engineer', 'sex': '男'} #dist参数调用 #注意:**otherInfo表示把otherInfo这个dict的所有key-value用关键字参数传入到函数的**kw参数,kw将获得一个dict,kw获得的dict是otherInfo的一份拷贝,对kw的改动不会影响到函数外的otherInfo otherInfo = {'sex':'male','job':'Python Engineer'} person('lidysun',28,**otherInfo) #lidysun 28 other: {'job': 'Python Engineer', 'sex': 'male'}
函数关键字参数
def person(name,age,*,sex,job): print('name:%s,age:%d;sex:%s,job:%s' %(name,age,sex,job)) person('sg',27,job='Engineer',sex='male') #如果函数定义中已经有了一个可变参数,后面跟着的命名关键字参数就不再需要一个特殊分隔符*了 def person2(name,age,*args,sex,job): print('name:%s,age:%d;sex:%s,job:%s' %(name,age,sex,job)) person2('sungang',28,sex='男',job='Python Engineer') #命名关键字参数可以设置默认值,如果有默认值,调用时可不传递该参数 def person3(name,age,*,wechat="sg820262236",job): print('name:%s,age:%d;wechat:%s,job:%s' %(name,age,wechat,job)) person3('sungang',27,job='Engineer') person3('lidysun',28,wechat='1008611',job='Engineer')
命名关键字参数
#调用时命名关键字参数必须传入参数名,关键字参数之间位置不限。如果没有传入参数名,调用将报错 def person(name,age,*,sex,job): print('name:%s,age:%d;sex:%s,job:%s' %(name,age,sex,job)) person('sg',27,job='Engineer',sex='male') #如果函数定义中已经有了一个可变参数,后面跟着的命名关键字参数就不再需要一个特殊分隔符*了 def person2(name,age,*args,sex,job): print('name:%s,age:%d;sex:%s,job:%s' %(name,age,sex,job)) person2('sungang',28,sex='男',job='Python Engineer') #命名关键字参数可以设置默认值,如果有默认值,调用时可不传递该参数 def person3(name,age,*,wechat="sg820262236",job): print('name:%s,age:%d;wechat:%s,job:%s' %(name,age,wechat,job)) person3('sungang',27,job='Engineer') person3('lidysun',28,wechat='1008611',job='Engineer')
以上就是python的参数使用~更多Python学习推荐:PyThon学习网教学中心。