numpy.asanyarray#
- numpy.asanyarray(a, dtype=None, order=None, *, like=None)#
将输入转换为 ndarray,但传递 ndarray 子类.
- 参数:
- aarray_like
输入数据,可以是任何可以转换为数组的格式.这包括标量、列表、元组列表、元组、元组元组、列表元组和 ndarrays.
- dtype数据类型, 可选
默认情况下,数据类型是从输入数据推断出来的.
- order{‘C’, ‘F’, ‘A’, ‘K’}, 可选
内存布局.’A’ 和 ‘K’ 取决于输入数组 a 的顺序.’C’ 行优先(C 风格),’F’ 列优先(Fortran 风格)内存表示.’A’(任意)意味着如果 a 是 Fortran 连续的,则为 ‘F’,否则为 ‘C’.’K’(保持)保留输入顺序.默认为 ‘C’.
- devicestr, 可选
创建的数组放置的设备.默认:
None
.仅用于数组API互操作性,因此如果传递,必须为``”cpu”``.在 2.1.0 版本加入.
- copybool, 可选
如果
True
,则对象被复制.如果None
,则仅在需要时复制对象,即如果__array__
返回一个副本,如果 obj 是一个嵌套序列,或者如果需要复制以满足其他要求(dtype
、order
等).对于False
,如果无法避免复制,则会引发ValueError
.默认值:None
.在 2.1.0 版本加入.
- likearray_like, 可选
引用对象以允许创建不是 NumPy 数组的数组.如果作为
like
传递的类数组对象支持__array_function__
协议,结果将由它定义.在这种情况下,它确保创建一个与通过此参数传递的对象兼容的数组对象.在 1.20.0 版本加入.
- 返回:
- outndarray 或一个 ndarray 子类
数组解释 a.如果 a 是一个 ndarray 或 ndarray 的子类,它将按原样返回,并且不执行复制.
参见
asarray
类似的功能,总是返回 ndarrays.
ascontiguousarray
将输入转换为连续数组.
asfortranarray
将输入转换为列优先内存顺序的 ndarray.
asarray_chkfinite
类似的功能,用于检查输入是否包含NaN和Inf.
fromiter
从迭代器创建一个数组.
fromfunction
通过在网格位置上执行函数来构造一个数组.
示例
将列表转换为数组:
>>> a = [1, 2] >>> import numpy as np >>> np.asanyarray(a) array([1, 2])
ndarray
子类的实例按原样传递:>>> a = np.array([(1., 2), (3., 4)], dtype='f4,i4').view(np.recarray) >>> np.asanyarray(a) is a True