在Python中进行方法调用时,在什么情况下输入参数时会使用=符号?
我注意到有时候是这样的:
object.method(argument1 = ... , argument2 = ...)
有时是
object.method(... , ...)
谢谢!
答案 0 :(得分:2)
这种类型的参数称为关键字参数,您可能已经将其视为(kwargs)。
在一个函数中,您可以传递两种类型的args:位置参数和关键字参数。
def function(arg):
因此,您必须在此函数内传递一个位置参数,这意味着您只需要传递该arg的值,例如
function(1)
或字符串function("hello")
或列表等;这种类型的arg称为位置arg。
如果必须在function(name = "John")
之类的函数调用的括号内指定变量的名称,则可以使用关键字args。
如果您想了解更多有关此主题的内容,建议您先查看Python(*)中的unpack运算符,然后再查看* args和** kwargs。
2个词来说明* args和** kwargs在Python中的作用,它们使您可以在函数调用中指定无限数量的参数。
def function(*args, **kwargs):
pass
function(1,2,3,"hello",[1,2,3],name="John",age=5)