📜  Python 复制列表 - Python (1)

📅  最后修改于: 2023-12-03 15:04:15.830000             🧑  作者: Mango

Python 复制列表 - Python

在Python中,可以使用不同的方法复制列表。本文将介绍两种最常用的方法:浅复制和深复制。

浅复制列表

浅复制是一种只复制列表中元素的引用,而不是创建新的元素本身的方法。

list1 = [1, 2, 3]
list2 = list1.copy()

在这个例子中,我们使用了 copy() 方法来创建 list1 的副本 list2list1list2 是两个不同的列表,但是它们所存储的元素是相同的。这意味着,如果我们改变其中一个列表中的元素,另一个列表也会发生变化。

list2[0] = 4
print(list1) # [1, 2, 3]
print(list2) # [4, 2, 3]
深复制列表

深复制是一种创建新元素的方法,而不是只复制元素的引用。这种情况下,我们需要使用 copy() 方法中的另一个变体: deepcopy()

import copy

list1 = [[1, 2], [3, 4]]
list2 = copy.deepcopy(list1)

在这个例子中,我们使用了 deepcopy() 方法来创建 list1 的新版本,即 list2list1list2 是两个不同的列表,它们分别存储相同的元素但是这些元素已经是新的实例,而不是元素的引用。这意味着,如果我们改变其中一个列表中的元素,另一个列表不会受到任何影响。

list2[0][0] = 5
print(list1) # [[1, 2], [3, 4]]
print(list2) # [[5, 2], [3, 4]]

在Python中,复制列表具有各种用途,从创建副本以保存原始数据到处理大型数据集以避免不必要的影响。希望这篇文章为你提供了深层次的认识和技能,帮助你在日常编程中使用和处理列表。