如果我有一个具有如下函数的类,并且我想拥有两个具有默认值的变量:
class item:
def __init__(self, var1=1, var2=2)
self.var1 = var1
self.var2 = var2
如何创建此类的实例并更改var2
的值,而不更改var1
?
a = item(#Leave var1 alone, but set var2 to 'hello')
您只需实例化它即可:
# leave var1 as default
a = item(var2='hello')
# leave var2 as default
a = item(var1='hey')
# overwrite both var1 and var2
a = item(var1='hey', var2='hello')
# use both defaults
a = item()
在示例中的注释中要注意的事情是,由于没有默认值,您现在必须提供一个var1
。因此item(var1=1, var3=2)
,item(1, var3=2)
两者都可以工作,而item(var3=2)
不会。同样,当关键字的参数没有默认值时,关键字参数必须排在最后,因此item(var3=2, 1)
也不会起作用item(var3=2, var1=1)
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句