# 视图和复制
# 视图
不同的数组对象可以共享同样的数据(此外其他都是对立的)。view方法就可以实现这一操作。
c = a.view() # 现在开始c是一个新的数组,并且和a共享数据 c is a # 说明c和a是两个不同的对象 False c.base is a # c是a数组的数据视图 True c.shape = 2,6 # a的形状不会发生改变 a.shape (3, 4) c[0,4] = 1234 # 但是a的数据会跟着发生改变 a array([[ 0, 1, 2, 3], [1234, 5, 6, 7], [ 8, 9, 10, 11]])
# 复制
copy方法生成数组的一个完整的拷贝,包括其数据。
>>> d = a.copy() >>> d is a False >>> d.base is a False >>> d[0,0] = 9999 >>> a array([[ 0, 10, 10, 3], [1234, 10, 10, 7], [ 8, 10, 10, 11]])