title: Python @property decorator not working
body: <p>Could anyone find a problem with this @property decorator? I cannot seem to get it to assert correctly. I'm sure I'm doing some really simple thing wrong, but can anyone point my tired eyes in the right direction please?</p>
  
  <pre><code>class A:
      def __init__(self):
          self.a = 0
          self._b = 0
  
      @property
      def b(self):
          return self.b
  
      @b.getter
      def b(self):
          if self._b is None:
              return 0
          return self._b
  
      @b.setter
      def b(self, val):
          self._b = (val * 20)
  
  
  def test_getter_setter():
      obj = A()
      obj.a = 1
      #obj.b = 2
      print obj.a, obj.b
      obj.b = 2
      print obj.a, obj.b
      assert obj.b == 40
  
  test_getter_setter()
  </code></pre>