擅长:python、mysql、java
<p>正如NXC所说,Python变量名实际上指向一个对象,而不是内存中的一个特定位置。</p>
<p><code>newList = oldList</code>将创建指向同一对象的两个不同变量,因此,更改<code>oldList</code>也将更改<code>newList</code>。</p>
<p>但是,当您执行<code>newList = oldList[:]</code>时,它会“切片”列表,并创建一个新列表。<code>[:]</code>的默认值是0和列表的结尾,因此它复制所有内容。因此,它创建了一个新列表,其中包含第一个列表中包含的所有数据,但这两个列表都可以在不更改另一个的情况下进行更改。</p>