Pindai Array NumPy vs Paparan

Perbezaan antara pindai dan paparan

Perbezaan utama antara pindai dan paparan array adalah pindai adalah array baru, sementara paparan hanya paparan array asli.

Pindai mempunyai data, setiap perubahan yang dilakukan kepada pindai akan mempengaruhi array asli, dan setiap perubahan yang dilakukan kepada array asli akan mempengaruhi pindai.

Tampilan tidak memiliki data, setiap perubahan yang dibuat pada tampilan akan mempengaruhi array asal, dan setiap perubahan yang dibuat pada array asal akan mempengaruhi tampilan.

Salinan:

Contoh

Lakukan salinan, ubah array asal, dan tampilkan dua array:

import numpy as np
arr = np.array([1, 2, 3, 4, 5])
x = arr.copy()
arr[0] = 61
print(arr) 
print(x)

Jalankan Contoh

Salinan ini seharusnya tidak terpengaruh oleh perubahan yang dibuat pada array asal.

Tampilan:

Contoh

Buat tampilan, ubah array asal, dan tampilkan dua array:

import numpy as np
arr = np.array([1, 2, 3, 4, 5])
x = arr.view()
arr[0] = 61
print(arr) 
print(x)

Jalankan Contoh

Tampilan seharusnya terpengaruh oleh perubahan yang dibuat pada array asal.

Ubah dalam tampilan:

Contoh

Buat tampilan, ubah tampilan, dan tampilkan dua array:

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

Jalankan Contoh

Array asal seharusnya terpengaruh oleh perubahan yang dibuat pada tampilan.

Memeriksa apakah array memiliki data

Seperti yang disebutkan sebelumnya, salinan memiliki data, sementara tampilan tidak memiliki data, tetapi bagaimana kita memeriksa?

Setiap array NumPy memiliki properti baseJika array memiliki data, properti base ini mengembalikan None.

Jika tidak,base Properti akan merujuk kepada objek asal.

Contoh

Cetak nilai properti base untuk memeriksa apakah array memiliki data sendiri:

import numpy as np
arr = np.array([1, 2, 3, 4, 5])
x = arr.copy()
y = arr.view()
print(x.base)
print(y.base)

Jalankan Contoh

Salinan Dikembalikan None.

Lihat Kembali Array Asal