title: Autocomplete for jupyter notebook and ipython console for classes with "@property"
body: <p>I want to use autocomplete in ipython and jupyter for the following code with read-only class attributes (using <code>@property</code>):</p>
  
  <pre><code>class A(object):
      def __init__(self):
          self.__value = 1
  
      @property
      def value(self):
          return self.__value
  
  class B(object):
      def __init__(self):
          self.a = A()
  
  class C(object):
      def __init__(self):
          self.__a = A()
  
      @property
      def a(self):
          return self.__a
  
  b = B()
  c = C()
  </code></pre>
  
  <p>Both</p>
  
  <pre><code>&gt;&gt;&gt; b.a.value
  </code></pre>
  
  <p>and</p>
  
  <pre><code>&gt;&gt;&gt; c.a.value
  </code></pre>
  
  <p>work well. But autocomplete for ipython and jupyter notebook works only for</p>
  
  <pre><code>&gt;&gt;&gt; b.a.value
  </code></pre>
  
  <p>and</p>
  
  <pre><code>&gt;&gt;&gt; c.a.
  </code></pre>
  
  <p>without tab-autocomplete.</p>
  
  <p>How to rewrite the code to achieve <code>c.a.&lt;tab&gt; -&gt; c.a.value</code> autocomplete in ipython and jupyter notebook?</p>