Python NumPy(五)数组复制与视图

复制和查看的区别

数组的副本和视图的主要区别在于,副本是一个新数组,而视图只是原始数组的视图。

副本拥有数据,对副本所做的任何更改都不会影响原始数组,对原始数组所做的任何更改都不会影响副本。

视图不拥有数据,对视图所做的任何更改都会影响原始数组,对原始数组所做的任何更改都会影响视图。


复制:

例子

制作一个副本,更改原始数组,并显示两个数组:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
x = arr.copy()
arr[0] = 42

print(arr)
prin

View:

例子

创建一个视图,更改原始数组,并显示两个数组:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
x = arr.view()
arr[0] = 42

print(arr)
print(x)
自己试试 »

视图应该受到对原始数组所做更改的影响。

在视图中进行更改:

例子

创建一个视图,更改视图,并显示两个数组:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
x = arr.view()
x[0] = 31

print(arr)
print(x)
自己试试 »

原始数组应该受到对视图所做的更改的影响。

https://www.w3schools.com/python/numpy/numpy_copy_vs_view.asp

posted on 2022-03-28 19:57  -G  阅读(151)  评论(0)    收藏  举报

导航