NumPy(Numerical Python的缩写)是一个开源的Python科学计算库。使用NumPy,就可以很自然地使用数组和矩阵。NumPy包含很多实用的数学函数,涵盖线性代数运算、傅里叶变换和随机数生成等功能。本文主要介绍一下NumPy中asarray方法的使用。

numpy.asarray

numpy.asarray(a, dtype=None, order=None) [source]

将输入转换为数组。

参数

a :array_like

输入数据,可以转换为数组的任何形式。

这包括列表,元组列表,元组,元组元组,

列表元组和ndarray。

dtype :data-type, 可选

默认情况下,data-type是从输入数据推断出来的。

order{‘C’, ‘F’}, 可选

是使用行-主格式(C-style)还是列-主格式(Fortran-style)内存表示。

默认为'C'

返回值

outndarray

如果输入已经是dtype和order匹配的ndarray,

则不执行复制。如果a是ndarray的子类,

则返回一个基类ndarray。

例子

将列表转换为数组:

>>> a = [1, 2]
>>> np.asarray(a)
array([1, 2])

现有数组未复制:

>>> a = np.array([1, 2])
>>> np.asarray(a) is a
True

如果dtype设置为if,则仅当dtype不匹配时才复制数组:

>>> a = np.array([1, 2], dtype=np.float32)
>>> np.asarray(a, dtype=np.float32) is a
True
>>> np.asarray(a, dtype=np.float64) is a
False

与相反asanyarray,ndarray子类未传递:

>>> issubclass(np.recarray, np.ndarray)
True
>>> a = np.array([(1.0, 2), (3.0, 4)], dtype='f4,i4').view(np.recarray)
>>> np.asarray(a) is a
False
>>> np.asanyarray(a) is a
True


推荐文档

相关文档

大家感兴趣的内容

随机列表