title: How does a classmethod object work?
body: <p>I'm having trouble to understand how a classmethod object works in Python, especially in the context of metaclasses and in <code>__new__</code>. In my special case I would like to get the name of a classmethod member, when I iterate through the <code>members</code> that were given to <code>__new__</code>.</p>
  
  <p>For normal methods the name is simply stored in a <code>__name__</code> attribute, but for a classmethod there is apparently no such attribute. I don't even see how the classmethod is invoked, as there is no <code>__call__</code> attribute either.</p>
  
  <p>Can someone explain to me how a classmethod works or point me to some documentation? Googling led me nowhere. Thanks!</p>