擅长:python、mysql、java
<p>循环所做的是重复地将相同的list对象(<code>list1</code>)附加到<code>result</code>。在运行循环并再次检查<code>result</code>之后,可以通过执行类似于<code>list1.append(True)</code>的操作来验证:</p>
<pre><code>[['node1', 'node2', 'node3', 'node4', True],
['node1', 'node2', 'node3', 'node4', True],
['node1', 'node2', 'node3', 'node4', True]]
</code></pre>
<p>您要做的是每次附加<a href="https://stackoverflow.com/a/2612815/789671">make a copy</a>而不是<code>list1</code>,例如:</p>
<pre><code>for i in range (len(list2)):
list1.append(list2[i])
result.append(list(list1))
list1.pop()
</code></pre>
<p>尽管我可能会使用列表串联,它隐式地生成一个新列表:</p>
<pre><code>for item in list2:
result.append(list1 + [item])
</code></pre>