擅长:python、mysql、java
<p>这里有两件事:</p>
<ul>
<li><p>小的Python整数(从-5到256,包括-5到256)是<em>内部的</em>;一个文本整数被转换成相同数字的完全相同的对象。对于这些整数,它们的<code>id()</code>是常数。</p></li>
<li><p><code>id()</code>仅在对象的生存期内是唯一的;如果第一个对象再次被清除,则可以在以后对另一个对象重用它。您不会将文本存储在任何地方,因此可以再次重用内存地址<em>:</p>
<pre><code>>>> id('foo bar')
4572936304
>>> id('bar baz')
4572936304
</code></pre>
<p>这里<code>'foo bar'</code>和<code>'bar baz'</code>是两个不同的对象,但它们的生命周期并不重叠。第一个是创建的,传递给<code>id()</code>函数,然后再次销毁。然后创建第二个字符串,传递给<code>id()</code>,然后依次销毁。</p></li>
</ul>