-3
我在Python2.7中编写了一个简单的类,它应该使用@property
功能。Python 2.7 @属性用法导致错误“全局名称_c__pro'未定义”
class c():
def __init__(self):
__pro = 1
@property
def pro(self):
return __pro *10
def setpro(self, x):
__pro = x
现在,当我从这个类来创建一个对象,并尝试访问pro
财产,我得到以下错误:
>>> x = c()
>>> x.pro
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 7, in pro
NameError: global name '_c__pro' is not defined
注意,整个事情是相同的蟒蛇commandline-里面写会话,所以它应该与丢失导入或错误的导入命名空间无关。
我在这里做错了什么?我如何重写它以访问pro
?
实际上使其成为*产权*'上的self'而不是一个局部变量...!? – deceze