python 副本与视图

发布时间:2022-05-09 09:38:37 人气:225 作者:多测师

  视图(浅复制)只是原有数据的一个引用,通过该引用可访问、操作原有数据,如果我们对视图进行修改,它会影响原始数据,因为浅复制共享内存。

  副本(深复制)是对数据的完整拷贝,如果我们对副本进行修改,它不会影响到原始数据,因为深复制不共享内存。

  调用 ndarray 的 view() 方法会产生一个视图,下面通过示例来看一下。

  import numpy as npa = np.

  arange(6).reshape(2,3)

  # 创建视图

  b = a.view()

  print('a的id:', id(a))

  print('b的id:', id(b))

python 副本与视图

  # 修改 b 的形状

  b.shape = 3,2

  print('a的形状:')

  print(a)

  print('b的形状:')

  print(b)

  print(a is b)

  调用 ndarray 的 copy() 方法会产生一个副本,下面通过示例来看一下。

  import numpy as npa = np.

  arange(1, 6)

  # 创建副本

  b = a.copy()

  print(a is b)

  b[1] = 10

  print(a[1])

  print(b[1])

  以上内容为大家介绍了python 副本与视图,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注多测师。https://www.e70w.com/xwzx/


返回列表
在线客服
联系方式

热线电话

17727591462

上班时间

周一到周五

二维码
线