Por que um método não é idêntico a si mesmo?

oDocumentação do Python sobre ois operador diz:

Os operadoresis eis not teste para identidade do objeto:x is y é verdade se e somente sex ey são o mesmo objeto.x is not y produz o valor inverso da verdade.

Vamos tentar isso:

>>> def m():
...   pass
... 
>>> m is m
True

oA documentação do Python também diz:

Devido à coleta automática de lixo, listas gratuitas e a natureza dinâmica dos descritores, você pode perceber um comportamento aparentemente incomum em certos usos dois operador, como aqueles que envolvem comparações entre métodos de instância ou constantes. Verifique a documentação deles para mais informações.

>>> class C:
...   def m():
...     pass
... 
>>> C.m is C.m
False

Procurei mais explicações, mas não consegui encontrar nenhuma.

Porque éC.m is C.m falso?

Estou usando o Python 2.x. Conforme observado nas respostas abaixo, no Python 3.xC.m is C.m é verdade.

questionAnswers(3)

yourAnswerToTheQuestion