python参数种类_python的参数类型

Python中函数的参数有4种形式,分别是:

位置或关键字参数(Positional-or-keyword parameter)

仅位置的参数(Positional-only parameter)

任意数量的位置参数(var-positional parameter)

任意数量的关键字参数(var-keyword parameter)

第一种:位置或关键字参数

这种参数是Python中默认的参数类型,定义这种参数后,可以通过位置参数,或者关键字参数的形式传递参数:

code

第二种方式:仅适用位置参数的形式

这种形式在需要将参数传递给函数(方法)时,仅能通过位置参数的传递方式。这种形式对于Python的开发者来说,暂时并没有办法使用。这种形式现在仅存在Python的很多内建的函数上:

code

第三种:任意数量的位置参数(带单个星号参数)

任意数量的位置参数在定义的时候是需要一个星号前缀来表示,在传递参数的时候,可以在原有参数的后面添加任意多个参数,这些参数将会被放在元组内提供给函数(方法):

code

第四种:任意数量的关键字参数(带两个星号参数)

任意数量的关键字参数在定义的时候,参数名称前面需要有两个星号(**)作为前缀,这样定义出来的参数,在传递参数的时候,可以在原有的参数后面添加任意多个关键字参数,关键字参数是使用[参数名称=参数值]的形式进行传递:

code

总结:四种参数形式中仅有第二种Python没有提供定义的方法,其他三种在定义的时候也需要注意,定义的时候应该根据Python的解析规律进行定义,其中:

位置或关键字参数应该在最前面,其中,没有默认值的应该在有默认值的参数前面

任意数量位置参数应该放在所有位置或关键字参数的后面

任意数量关键字参数应该放在任意数量位置参数的后面

注意:任意数量位置参数和任意数量关键字参数只能在定义中定义一次。

code

你可能感兴趣的:(python参数种类)