Python属性装饰器不工作,为什么?

Mat*_*ell 7 python python-2.7

出于某种原因,'obj._max_value'和'obj._current_value'未设置.我看了很多教程,似乎我正确地做了.有谁知道它为什么不起作用?

请参阅代码:https://gist.github.com/matthew-campbell/5561562

(Python 2.7)


更新:

class Progress():

  @property
  def progress_bar_length(self):
    return self._progess_bar_length

  @progress_bar_length.setter
  def progress_bar_length(self, length):
    self._progress_bar_length = length

  @progress_bar_length.deleter
  def progress_bar_length(self):
    del self.progress_bar_length
Run Code Online (Sandbox Code Playgroud)

use*_*342 24

property装饰不与老式类工作.继承你的类object来获得一个新式的类:

class Progress(object):
    # ...
Run Code Online (Sandbox Code Playgroud)