Python拷贝一个数组
时间: 2023-11-05 16:53:19 浏览: 98
在中,拷贝一个数组可以使用赋值、浅拷贝和深拷贝三种方式。
1. 赋值:通过将一个数组赋值给另一个变量,它们将共享同一个数组对象。当其中一个变量修改数组时,另一个变量也会受到影响。
例如:
```
a = [1, 2, 3]
b = a
print(b) # 输出 [1, 2, 3]
a = 0
print(b) # 输出 [0, 2, 3]
```
2. 浅拷贝:使用copy()方法可以创建一个新的数组对象,但是新数组中的元素仍然是原数组中元素的引用。当原数组中的元素是可变对象时,修改这些对象会影响到新数组和原数组。
例如:
```
import copy
a = [1, 2, [3, 4]]
b = copy.copy(a)
print(b) # 输出 [1, 2, [3, 4]]
a = 0
print(b) # 输出 [1, 2, [0, 4]]
```
3. 深拷贝:使用deepcopy()方法可以创建一个完全独立的新数组对象,新数组中的元素不再是原数组中元素的引用,而是完全复制了一份。这样即使修改原数组中的元素也不会影响到新数组。
例如:
```
import copy
a = [1, 2, [3, 4]]
b = copy.deepcopy(a)
print(b) # 输出 [1, 2, [3, 4]]
a = 0
print(b) # 输出 [1, 2, [3, 4]]
```
所以,根据你的需求,你可以选择赋值、浅拷贝或深拷贝来拷贝一个数组。
阅读全文