繁体   English   中英

Python属性getter和setter decorator不可调用

[英]Python property getter and setter decorator not callable

我正在做类似以下的事情

class Parrot(object):
    def __init__(self):
        self.__voltage = 100000

    @property
    def voltage(self):
        """Get the current voltage."""
        return self.__voltage

然而,它将电压属性视为int,所以当我这样打电话时

p = Parrot()
print(p.voltage())

我明白了

TypeError: 'int' object is not callable

我试过用一个和两个强调来破坏电压属性名称。

getter的重点是它返回值而不被调用。 p.voltage返回整数对象,因此运行p.voltage()等效于100()或其他东西。

仍然可能存在要调用属性值的情况,例如,如果值本身是函数。 但你在这里不需要它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM