python的参数有哪些?怎么用?

513次阅读
没有评论
python的参数有哪些?怎么用?

之前我们学了python中的许多函数,但其中还有很多参数,不知道小伙伴们平时注意到了没有。今天我们就其中的三个参数,为大家进行讲解。

 

函数可变参数

#关键字参数允许你传入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的参数使用。

 

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:wuyou2021-06-05发表,共计1777字。
新手QQ群:570568346,欢迎进群讨论 Python51学习