numpy 学习笔记(备忘)
切片和索引
import numpy as np
a = np.random.randint(low=1, high=10, size=(3, 3, 2))
print('----------a----------\n', a)
print('-----a[:, 2, :]------\n', a[:, 2, :]) # 切片,第二维只取idx=2的,其他维全取
print('-----a[:][2][:]------\n', a[:][2][:]) # 索引,先a[:]=a,再a[:][2]=a[2],再a[:][2][:]=a[2][:]=a[2],所以就是a[2]
输出:
numpy中array和asarray的区别
array和asarray都可以将结构数据转化为ndarray,但是主要区别就是当数据源是ndarray时,array仍然会copy出一个副本,占用新的内存,但asarray不会;当数据源是其他类型的数据时,两者都会copy。
在numpy中copy ndarray的方法
import copy
data_copy = copy.copy(data_original)
# b=a 对于ndarray来说普通赋值只是引用,并不会copy