python - Python 中的属性

标签 python

使用变量 self._age 的原因是什么?没有链接到已使用的 self.age 的相似名称?

class newprops(object):
    def getage(self):
        return 40
    def setage(self, value):
        self._age = value
    age = property(getage, setage, None, None)

最佳答案

self.age已经被属性占用,需要给实际的变量起另外一个名字,这里是_age

顺便说一句,从 Python 2.6 开始,你可以用装饰器来写这个:

def newprops(object):

    @property
    def age(self):
        return 40

    @age.setter
    def age(self, value):
        self._age = value

关于python - Python 中的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3781834/

相关文章:

python - 用列表理解替换 nan

python - 编译一个 Cython 项目并清理

python - Prettyplotlib 条形图中的条形顺序

python - 属性错误: module 'tensorflow.python.framework.tensor_shape' has no attribute 'scalar'

python - 这段代码会发生什么?

python - Django 。简单的 FormView 不保存

python - 单个语句中的多个比较运算符(链接比较运算符)

python - 命名管道不在 Python 中刷新

python - Matplotlib:季度小刻度标签

python - Pandas 数据框中的分组依据