为什么文档中说:
类集合。可调用
分别提供方法的类的abc包含
()、hash()、len()和call()。
不仅是__call__()
?
__contains__()
、__hash__()
、__len__()
对可调用对象的作用是什么?
例如,我需要使我的类可哈希吗?
你误解了那句话的意思。文档涵盖四个 abc:
class collections.Container
class collections.Hashable
class collections.Sized
class collections.Callable
句子 abc中的语法结构分别为分别提供方法的类按顺序为这里的四个类中的每个类附加一个单独的方法。
所以Container
提供__contains__()
, Hashable
提供__hash__()
, Sized
提供__len__()
, Callable
提供__call__()
。
也就是说,Callable
只提供了一个__call__()
方法,而不是其他3个方法中的任何一个。