import numpy as np
# reshape(shape) 不改变数组元素,返回一个shape形状的数组,原数组不变
a = np.arange(20)
print(a.reshape([4,5]))
print(a)
# resize 与reshape作用一致,区别在于resize修改原数组
# 注意:不可以通过赋值实现,即 b = a.resize([4,5])返回为None
print(a.resize([4,5]))
print(a)
# swapaxes(ax1,ax2) 将数组n个维度中两个维度进行调换,不改变原数组
print(a.swapaxes(1,0))
# transpose也可以转换坐标系,transpose(1, 2, 0)括号里的值表示坐标系的索引号
# 原始的坐标系为[c,h,w] 0-c,1-h,2-w
# 变换后的坐标系统[h,w,c]
# transpose() 可以将数组转置
# flatten() : 对数组进行降维,返回折叠后的一维数组,原数组不变
# ravel():与flatten作用一致,将多位数组转换为一维,区别在于是否拷贝。
# flatten函数会请求分配内存来保存结果,而ravel函数只是返回数组的一个视图(view)
print(a.flatten())
print(a)
输出结果: