title: Does Python have class prototypes (or forward declarations)?
body: <p>I have a series of Python classes in a file. Some classes reference others.</p>
  
  <p>My code is something like this:</p>
  
  <pre><code>class A():
      pass
  
  class B():
      c = C()
  
  class C():
      pass
  </code></pre>
  
  <p>Trying to run that, I get <code>NameError: name 'C' is not defined</code>. Fair enough, but is there any way to make it work, or do I have to manually re-order my classes to accommodate? In C++, I can create a class prototype. Does Python have an equivalent?</p>
  
  <p>(I'm actually playing with Django models, but I tried not complicate matters).</p>