好了,可以说我有一个非常简单的类,即:自动应用getter和setter新的对象变量
class Test(object):
pass
我想什么做的是定义一些默认的setter和getter方法 这是自动在创建时应用于新对象成员。在下面斧头的例子应该始终是大写,即:
a = Test()
a.x = "foo"
print a.x
>>> FOO
如果我在类中创建x
我会得到这种行为是这样的:
class Test(object):
def __init__(self):
self._x = ""
@property
def x(self):
return self._x
@x.setter(self, string):
self._x = string.upper()
那么,有没有可能做到这一点不为每个成员定义setter和getter方法?非常感谢。
编辑:与创建时间我的意思是创建时间a.x
而不是类实例。
我原来是这么认为的,那么我想我开始认为它是:*它们在创建时自动应用到一个新的对象成员* ...所以我想如果在'__init__'中初始化了一个类属性/或属性应该豁免上层框... – 2014-12-07 12:23:46
嗯,也许我有点不清楚,我的意思是新成员的创建时间,即'斧头'我很抱歉。 – jrsm 2014-12-07 12:26:04
@jonrsharpe:谢谢你的回答。 – jrsm 2014-12-07 12:27:36