擅长:python、mysql、java
<p>它强调对象的功能,而不是它的方法或类型。Capabilites是由诸如<code>__iter__</code>和<code>__len__</code>等“helper”函数声明的,但它们并不构成接口。接口位于内置函数中,除此之外,还包含内置运算符,如+和[],用于索引和切片。在</p>
<p>有时,它不是一对一的对应关系:例如,<code>iter(obj)</code>返回一个对象的迭代器,即使没有定义<code>__iter__</code>,它也可以工作。如果没有定义,它将继续检查对象是否定义了<code>__getitem__</code>,并将返回一个按索引方式访问对象的迭代器(如数组)。在</p>
<p>这与Python的Duck类型结合在一起,我们只关心可以对一个对象做什么,而不关心它是一个特定类型。在</p>