numpy.asarray #
- 麻木的。asarray ( a , dtype = None , order = None , * , like = None ) #
将输入转换为数组。
- 参数:
- 类似数组
输入数据,可以是任何可以转换为数组的形式。这包括列表、元组列表、元组、元组的元组、列表的元组和 ndarray。
- dtype数据类型,可选
默认情况下,数据类型是根据输入数据推断的。
- 顺序{'C', 'F', 'A', 'K'},可选
内存布局。 'A' 和 'K' 取决于输入数组 a 的顺序。 “C”行优先(C 风格)、“F”列优先(Fortran 风格)内存表示。如果a是 Fortran 连续的,则“A”(任意)表示“F” ,否则表示“C”,“K”(保留)保留输入顺序 默认为“K”。
- 类似array_like,可选
允许创建非 NumPy 数组的引用对象。如果传入的类似数组
like
支持__array_function__
协议,则结果将由它定义。在这种情况下,它确保创建一个与通过此参数传入的数组对象兼容的数组对象。1.20.0 版本中的新增功能。
- 返回:
- 输出数组
的数组解释。如果输入已经是具有匹配数据类型和顺序的 ndarray,则不会执行任何复制。如果a是 ndarray 的子类,则返回基类 ndarray。
也可以看看
asanyarray
类似的函数通过子类传递。
ascontiguousarray
将输入转换为连续数组。
asfarray
将输入转换为浮点 ndarray。
asfortranarray
将输入转换为具有列优先内存顺序的 ndarray。
asarray_chkfinite
检查 NaN 和 Infs 输入的类似函数。
fromiter
从迭代器创建一个数组。
fromfunction
通过在网格位置上执行函数来构造数组。
例子
将列表转换为数组:
>>> 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