Does the inaccessible `.0` variable in `locals()` affect memory or performance?
<p>I maintain a project that has a function definition similar to this:</p>

<pre><code>def f(a, (b1, b2), c):
    print locals()
</code></pre>

<p>While debugging the code I discovered that a <code>.1</code> key appeared in <code>locals()</code>, with the value <code>(b1, b2)</code>. A quick check revealed that a function definition like the following:</p>

<pre><code>def f((a1, a2)):
    print locals()
</code></pre>

<p>will have a <code>.0</code> key in <code>locals()</code> with the value <code>(a1, a2)</code>. I was surprised by this behavior, but could find no information in the Python documentation.</p>

<p>My questions are: do these otherwise-inaccessible positional variables affect memory or performance? Are they documented anywhere? What purpose do they serve?</p>

<p>The project in question is feedparser, which is SAX-based and could potentially have dozens or hundreds of function calls that would be affected by this behavior.</p>
