<分区>
Possible Duplicate:
python - returning a default value
我在一个类中有一个函数:
def foo(self, value = None):
if value is None:
return self.value
self.value = value
return self
这是一个 getter 和 setter 合二为一的方法,优点是我可以像这样链接函数:
three = anInstanceOfMyClass.foo(3).bar().foo()
当我这样做时出现问题:
shouldBeNoneButIsThree = anInstanceOfMyClass.foo(3).foo(None).foo()
这里foo认为我没有通过参数。 我可以通过以下方式避免这种情况:
- 将值设置为一些奇怪的对象,比如随机字符串
- 在构造函数中创建一个对象实例,其值为默认值
两者似乎都太麻烦了,有什么更简单的方法吗?
为某物设定值(value)