Python中如何实现数组的复制及列表的元素弹出操作?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1294个文字,预计阅读时间需要6分钟。
让我们看看如何在Python中复制数组。有三种复制数组的方法:浅拷贝、深拷贝以及使用赋值运算符。
浅拷贝:使用赋值运算符(=)创建数组的副本,但数组中的元素(如果为复杂类型)仍然指向原始对象。
深拷贝:创建数组的深层次副本,即数组中的每个元素都被复制,不与原始数组中的元素共享。
使用赋值运算符创建数组副本:
pythonnew_arr=arr[:]
让我们看看如何在 Python 中复制数组。 有 3 种复制数组的方法:
- 只需使用赋值运算符。
- 浅拷贝
- 深拷贝
1 使用赋值运算符
我们可以使用赋值运算符 (=) 创建数组的副本。
语法:
new_arr = old_ arr
在 Python 中,Assignment 语句不复制对象,它们在目标和对象之间创建绑定。 当我们使用 = 运算符时,用户认为这会创建一个新对象; 好吧,事实并非如此。 它只创建一个共享原始对象引用的新变量。
示例:
from numpy import *arr1 = array([2, 6, 9, 4])
print(id(arr1))
arr2 = arr1
print(id(arr2))
arr1[1] = 7
print(arr1)
print(arr2)
我们可以看到两个数组都引用了同一个对象。
2 浅拷贝
一个浅副本意味着构造一个新的集合对象,然后用对原始中找到的子对象的引用填充它。 复制过程不会重复,因此不会创建子对象本身的副本。 在浅拷贝的情况下,对象的引用被复制在另一个对象中。
本文共计1294个文字,预计阅读时间需要6分钟。
让我们看看如何在Python中复制数组。有三种复制数组的方法:浅拷贝、深拷贝以及使用赋值运算符。
浅拷贝:使用赋值运算符(=)创建数组的副本,但数组中的元素(如果为复杂类型)仍然指向原始对象。
深拷贝:创建数组的深层次副本,即数组中的每个元素都被复制,不与原始数组中的元素共享。
使用赋值运算符创建数组副本:
pythonnew_arr=arr[:]
让我们看看如何在 Python 中复制数组。 有 3 种复制数组的方法:
- 只需使用赋值运算符。
- 浅拷贝
- 深拷贝
1 使用赋值运算符
我们可以使用赋值运算符 (=) 创建数组的副本。
语法:
new_arr = old_ arr
在 Python 中,Assignment 语句不复制对象,它们在目标和对象之间创建绑定。 当我们使用 = 运算符时,用户认为这会创建一个新对象; 好吧,事实并非如此。 它只创建一个共享原始对象引用的新变量。
示例:
from numpy import *arr1 = array([2, 6, 9, 4])
print(id(arr1))
arr2 = arr1
print(id(arr2))
arr1[1] = 7
print(arr1)
print(arr2)
我们可以看到两个数组都引用了同一个对象。
2 浅拷贝
一个浅副本意味着构造一个新的集合对象,然后用对原始中找到的子对象的引用填充它。 复制过程不会重复,因此不会创建子对象本身的副本。 在浅拷贝的情况下,对象的引用被复制在另一个对象中。

