擅长:python、mysql、java
<p>对于您的代码,<code>list1</code>是一个容器对象,它引用<code>list2</code>绑定到的对象。(通常,为了简洁起见,这样的对象被称为<code>list2</code>)在代码执行之后,<code>list1</code>最后包含三个元素(即对<code>list2</code>的引用),而<code>list2</code>显然包含连续5、6的三重(外循环执行3次)(内循环的每次执行都将5和6附加到<code>list2</code>)。你知道吗</p>
<p>以下代码应该是您所期望的:</p>
<pre><code>list1 = []
list2 = None
for i in range(3):
list2 = [] # To create a new empty list object and let it bound to the variable list2 every outer loop.
for j in range(5, 7):
list2.append(j)
list1.append(list2)
</code></pre>
<p>在这段代码中,执行之后,<code>list1</code>包含三个不同对象的元素。但它们在过去都与变量<code>list2</code>绑定。你知道吗</p>