1. numpy特点
- numpy为同构多维数组,即所有元素类型相同。例外情况:Python的原生数组里包含了NumPy的对象的时候,这种情况下就允许不同大小元素的数组
- 数组在创建时具有固定的大小,更改ndarray的大小将创建一个新数组并删除原来的数组(消耗资源较大)
- numpy的矢量化和广播的特性,使numpy计算速度快。矢量化使numpy循环索引等功能在预编译的C代码中实现,因此计算速度块。
2. numpy构造方法
- array:创建一个数组
numpy.array(object, dtype=None, *, copy=True, order='K',
subok=False, ndmin=0, like=None)
- arrange:创建间隔内均匀间隔的数组。(步长为非整数时,建议使用numpy.linspace)
numpy.arange([start, ]stop, [step, ]dtype=None, *, device=None, like=None)
- linspace:创建指定间隔内均匀分布的数字的数组。
numpy.linspace(start, stop, num=50, endpoint=True,
retstep=False, dtype=None, axis=0, *, device=None)
- zeros:创建一个给定形状和类型的新数组,用零填充。
numpy.zeros(shape, dtype=float, order='C', *, like=None)
- zeros_like:创建一个与给定数组具有相同形状和类型的零数组
numpy.zeros_like(a, dtype=None, order='K', subok=True,
shape=None, *, device=None)
- ones:创建一个给定形状和类型的新数组,用一填充。
numpy.ones(shape, dtype=None, order='C', *, device=None, like=None)
- ones_like:创建一个与给定数组具有相同形状和类型的一数组
numpy.ones_like(a, dtype=None, order='K', subok=True,
shape=None, *, device=None)
- empty:给定形状和类型的新数组,而不初始化条目
numpy.empty(shape, dtype=float, order='C', *,
device=None, like=None)
- empty_like:创建一个与给定数组具有相同形状和类型的数组,而不初始化条目
numpy.empty_like(prototype, dtype=None, order='K',
subok=True, shape=None, *, device=None)