首頁 > 後端開發 > Python教學 > 為什麼 Python 清單副本的變更會影響原始清單?

為什麼 Python 清單副本的變更會影響原始清單?

Susan Sarandon
發布: 2024-11-08 20:19:02
原創
374 人瀏覽過

Why Do Changes to a Python List Copy Affect the Original List?

Python:了解引用複製

在Python 中建立清單的副本時,可能會令人驚訝地發現對複製也會影響原始列表。這是因為 Python 使用引用複製,它會建立對原始清單的引用而不是單獨的實例。

為了說明這一點,讓我們考慮以下程式碼:

org_list = ['y', 'c', 'gdp', 'cap']

copy_list = org_list

copy_list.append('hum')

print(copy_list)
print(org_list)
登入後複製

此程式碼將輸出:

['y', 'c', 'gdp', 'cap', 'hum']
['y', 'c', 'gdp', 'cap', 'hum']
登入後複製

我們可以看到,原來的清單org_list在copy_list追加操作後被修改了。這是因為 copy_list 不是一個單獨的實例,而是對 org_list 的參考。

要建立原始列表的獨立副本,我們可以使用切片運算子:

copy_list = org_list[:]
登入後複製

這會建立一個新列表,它是 org_list 的副本。對 copy_list 所做的更改將不再影響 org_list。這種方法也可以用來複製其他類型的變量,例如 Pandas DataFrame。

以上是為什麼 Python 清單副本的變更會影響原始清單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板