首页 > 编程 > Python > 正文

python 函数参数:必选参数、默认参数、可变参数、关键字参数 和 命名关键字参数

2019-11-06 07:25:34
字体:
来源:转载
供稿:网友

python 函数参数:必选参数、默认参数、可变参数、关键字参数 和 命名关键字参数

在 Python 中定义函数,可以用必选参数、默认参数、可变参数、关键字参数和命名关键字参数 5种参数形式。

这 5 种参数都可以组合起来使用,但是注意,参数定义的顺序必须是:必选参数、默认参数、可变参数/命名关键字参数和关键字参数。

def f1(a,b,c=0,*args,**kw):	PRint(a,b,c,args,kw)#调用情况:f1(1,2)f1(1,2,c=4)f1(1,3,6,'aw','wad',x=123,y='1232')其中:

a,b 为必选参数

c=0 为默认参数

*args 为可变参数,可变参数允许你传入 0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple

**kw 为关键字参数,关键字参数允许你传入 0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

def person(name,age,*,city='hongkong',job='coder'):	print(name,age,city,job)person('scofff',212,city='homy',job='eatter')

* 后面的两个参数为命名关键字参数

对于关键字参数,函数的调用者可以传入任意不受限制的关键字参数,至于到底传入了哪些,就需要在函数内部通过 kw 检查。 与关键字参数**kw不同,命名关键字参数需要一个特殊分隔符*,*后面的参数被视为命名关键字参数,如果没有*号,那么后面的参数将被视为普通的未位置参数。

命名关键字参数必须传入参数名,而命名关键字参数可以有缺省值,这和位置参数不同。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表