title: Cannot call __subclass__ method inside format string expansion
body: <p>I have this line of python code that returns a list of all classes that currently exist:</p>
  
  <pre><code>'a'.__class__.__mro__[1].__subclasses__()
  </code></pre>
  
  <p>Now I'd expect that this line would work in the same way:</p>
  
  <pre><code>'{0.__class__.__mro__[1].__subclasses__()}'.format('a')
  </code></pre>
  
  <p>but this gives me the error:</p>
  
  <pre><code>AttributeError: type object 'object' has no attribute '__subclasses__()'
  </code></pre>
  
  <p>Then again this line:</p>
  
  <pre><code>'{0.__class__.__mro__[1].__subclasses__}'.format('a')
  </code></pre>
  
  <p>prints out</p>
  
  <pre><code>'&lt;built-in method __subclasses__ of type object at 0x9d1260&gt;'
  </code></pre>
  
  <p>so the methods seems to be there but I can't call it for some reason. Can somebody explain this behavior to me?</p>