NumPy 中 asarray 的用法

函数说明

asarray(a, dtype=None, order=None)

转换输入为数组 array

输入参数

a:类数组。输入数据,可以是转换为数组的任意形式。比如列表、元组列表、元组、元组元组、列表元组和 ndarray;

dtype:数据类型,可选。默认情况下,该参数与数据数据类型相同。

order:{'C','F'},可选。选择是行优先(C-style)或列优先(Fortran-style)存储。默认为行优先。

返回值

out:ndarray。‘a’ 的数组形式。如果输入已经是匹配 dtype 和 order 参数的 ndarray 形式,则不执行复制,如果输入是 ndarray 的一个子类,则返回一个基类 ndarray。

实例

   将列表转换为数组

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

   存在的数组不会被复制

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

   如果 “dtype” 参数存在,只有当 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
发布了77 篇原创文章 · 获赞 5 · 访问量 4930

猜你喜欢

转载自blog.csdn.net/SAKURASANN/article/details/102880567