Forwarding __getitem__ to getattr
<p>Can someone explain what is happening here?</p>

<pre><code>class Test(object):
    __getitem__ = getattr

t = Test()
t['foo']
</code></pre>

<p>gives error (in Python 2.7 and 3.1):</p>

<pre><code>TypeError: getattr expected at least 2 arguments, got 1
</code></pre>

<p>whereas:</p>

<pre><code>def f(*params):
     print params    # or print(params) in 3.1

class Test(object):
    __getitem__ = f
</code></pre>

<p>prints the two parameters I'd expect.</p>
