Trong lập trình python, khi làm việc với mảng trong numpy có các phương thức Copy và View. Bài này chúng ta sẽ đi tìm hiểu về mảng Copy và View trong Numpy.
Mảng Copy trong Numpy là một mảng mới, nó là dạng bản sao của mảng. Khi thay đổi mảng gốc ban đầu thì mảng copy không ảnh hưởng hoặc khi thay đổi mảng copy thì mảng ban đầu không bị ảnh hưởng.
Mảng View trong Numpy chỉ là cách nhìn khác của mảng. Khi thay đổi mảng ban đầu thì mảng View cũng bị thay đổi theo hoặc khi thay đổi mảng View thì mảng ban đầu cũng bị thay đổi.
Ví dụ sau tạo mảng Copy của mảng , thay đổi mảng ban đầu sau đó in 2 mảng :
import numpy as np
arr = np.array([1,2,3,4,5,6])
arr1 = arr.copy()
arr[0] = 12
print(arr)
print(arr1)
[12 2 3 4 5 6]
[1 2 3 4 5 6]
Ví dụ sau tạo mảng Copy của mảng, thay đổi giá trị của mảng copy sau đó in 2 mảng:
import numpy as np
arr = np.array([1,2,3,4,5,6])
arr1 = arr.copy()
arr1[0] = 10
print(arr)
print(arr1)
[1 2 3 4 5 6]
[10 2 3 4 5 6]
Ví dụ tạo mảng View của mảng, thay đổi giá trị của mảng bản đầu sau đó in 2 mảng:
import numpy as np
arra = np.array([1,2,3,4,5,6])
arr2 = arra.view()
arra[0] = 15
print(arra)
print(arr2)
[15 2 3 4 5 6]
[15 2 3 4 5 6]
Ví dụ thay đổi giá trị của mảng View.
import numpy as np
arra = np.array([1,2,3,4,5,6])
arr2 = arra.view()
arr2[0] = 18
print(arra)
print(arr2)
[18 2 3 4 5 6]
[18 2 3 4 5 6]