擅长:python、mysql、java
<p>对于示例中的特定行为(<code>A*3</code>给出了<code>A</code>中数据的三个连接副本),您希望实现<code>__mul__()</code>运算符。在</p>
<p>例如,它们是等效的:</p>
<pre><code>>>> a = [1,2,3]
>>> a*3
[1, 2, 3, 1, 2, 3, 1, 2, 3]
>>> a.__mul__(3)
[1, 2, 3, 1, 2, 3, 1, 2, 3]
>>>
</code></pre>
<p>更一般地说,如果你想实现一个序列类型,你必须实现所有的<a href="http://docs.python.org/release/2.5.2/ref/sequence-types.html" rel="nofollow">operations defined for sequence types</a>。你必须定义-</p>
<ul>
<li><code>A[3]</code>是什么意思(<code>__getitem__()</code>,<code>__setitem__()</code>)</li>
<li><code>A[1:10]</code>是什么意思(<code>__getslice__()</code>)</li>
<li><code>for item in A:</code>是什么意思(<code>__iter__()</code>)</li>
</ul>
<p>等等。在</p>
<p>以下是在<code>list</code>s上定义的方法的完整列表:</p>
^{pr2}$