📂 目录

  • 使用 np.copy() 创建数组副本
  • 使用 np.view() 创建视图
  • 使用切片创建新数组
  • 出站链接
  • 参考资料

🧰 使用 np.copy() 创建数组副本

如果你需要从已有数组创建副本(即修改副本时不影响原数组),可以使用 np.copy()

import numpy as np

a = np.array([1, 2, 3])
b = a.copy()   # 创建 a 的副本
b[0] = 10      # 修改副本不会影响 a

print(a)       # 输出:[1, 2, 3]
print(b)       # 输出:[10, 2, 3]


🔄 使用 np.view() 创建视图

np.view() 创建的是原数组的视图,修改视图会影响原数组:

a = np.array([1, 2, 3])
b = a.view()   # 创建 a 的视图
b[0] = 10      # 修改视图也会影响原数组

print(a)       # 输出:[10, 2, 3]
print(b)       # 输出:[10, 2, 3]


🧩 使用切片创建新数组

通过切片操作也可以创建新数组,具体取决于是否使用副本或视图:

a = np.array([1, 2, 3, 4, 5])
b = a[1:4]    # 这是一个视图
b[0] = 10      # 修改 b 会影响 a
print(a)       # 输出:[1, 10, 3, 4, 5]
print(b)       # 输出:[10, 3, 4]

如果你希望获得副本,可以使用 copy() 方法:

b = a[1:4].copy()  # 创建副本


🔗 出站链接


📚 参考资料

  • NumPy 官方文档
  • W3Schools Python NumPy 教程
  • GeeksForGeeks 深度讲解
  • 来自:www.52kanjuqing.com