15
最近,我在看一些Python成语。 我发现Python中使用的协议的很多描述,例如排序(__cmp__
,...)或生成器。此外,还有像每个对象(我想)定义的方法,如__hash__
。Python协议/接口的完整列表
经过在互联网上的一些搜索后,我还没有找到这些协议和方法的完整列表。 任何人都可以给我一些
指针
的URL?
最近,我在看一些Python成语。 我发现Python中使用的协议的很多描述,例如排序(__cmp__
,...)或生成器。此外,还有像每个对象(我想)定义的方法,如__hash__
。Python协议/接口的完整列表
经过在互联网上的一些搜索后,我还没有找到这些协议和方法的完整列表。 任何人都可以给我一些
指针
的URL?
您的最佳参考始终是Python Online Documentation,特别是关于Special method names的部分。
交互式Python解释器也是一个非常有用的工具。尝试下列:
>>> dir(object)
['__class__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__']
>>> help(object.__class__)
>>> help(object.__hash__)
>>> help(hash)
http://xkcd.com/138/ [对不起] – Johnsyweb 2011-05-22 11:55:10
@johnsyweb:+1 :) – Kru 2011-05-22 11:56:03
FYI他们通常被称为 “魔术方法”。 – katrielalex 2011-05-22 12:21:37