Python 中的 set copy() 方法
在本教程中,我們將學習關於 **copy** 方法集合資料結構的內容。讓我們詳細瞭解一下。
**copy** 方法用於獲取集合的 **淺複製**。
讓我們看看不同的例子來理解集合的 **普通** 複製和 **淺** 複製。
普通複製
按照以下步驟並理解輸出。
- 初始化一個集合。
- 使用賦值運算子將集合賦值給另一個變數。
- 現在,向複製的集合中新增另一個元素。
- 列印兩個集合。
你不會發現任何區別。賦值運算子返回集合的 **引用**。兩個集合都指向記憶體中的同一個物件。因此,對任何一個集合所做的任何更改都將反映在兩個集合中。
示例
# initialzing the set
number_set = {1, 2, 3, 4, 5}
# assigning the set another variable
number_set_copy = number_set
# changing the first value of number_set_copy
number_set_copy.add(6)
# printin the both sets
print(f"Set One: {number_set}")
print(f"Set Two: {number_set_copy}")輸出
如果你執行上面的程式碼,你將得到以下結果。
Set One: {1, 2, 3, 4, 5, 6}
Set Two: {1, 2, 3, 4, 5, 6}正如我們預期的那樣,當我們更改第二個集合時,第一個集合也發生了更改。如何避免這種情況?
我們可以使用 **淺複製** 來複制集合。有多種方法可以對集合進行淺複製。其中一種方法是使用 **集合** 的 copy 方法。
示例
讓我們看看使用 **copy** 方法的示例。
# initialzing the set
number_set = {1, 2, 3, 4, 5}
# shallow copy using copy
number_set_copy = number_set.copy()
# changing the first value of number_set_copy
number_set_copy.add(6)
# printin the both sets
print(f"Set One: {number_set}")
print(f"Set Two: {number_set_copy}")輸出
如果你執行上面的程式碼,你將得到以下結果。
Set One: {1, 2, 3, 4, 5}
Set Two: {1, 2, 3, 4, 5, 6}如果你檢視輸出,你不會發現第一個 **集合** 有任何更改。
結論¶
如果你對本教程有任何疑問,請在評論區提出。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP