numpy.asanyarray#

numpy.asanyarray(a, dtype=None, order=None, *, device=None, copy=None, like=None)#

將輸入轉換為 ndarray,但傳遞 ndarray 子類別。

參數:
aarray_like

輸入資料,可以是任何可以轉換為陣列的形式。這包括純量、列表、元組列表、元組、元組的元組、列表的元組和 ndarray。

dtypedata-type, optional

預設情況下,資料類型從輸入資料推斷。

order{‘C’, ‘F’, ‘A’, ‘K’}, optional

記憶體佈局。「A」和「K」取決於輸入陣列 a 的順序。「C」row-major (C 樣式)、「F」column-major (Fortran 樣式) 記憶體表示法。「A」(任何)表示如果 a 是 Fortran 連續的則為「F」,否則為「C」。「K」(保留)保留輸入順序。預設為「C」。

devicestr, optional

放置建立陣列的裝置。預設值:None。僅適用於 Array-API 互通性,因此如果傳遞則必須為 "cpu"

在 2.1.0 版本中新增。

copybool, optional

如果 True,則複製物件。如果 None,則僅在需要時複製物件,即如果 __array__ 傳回副本,如果 obj 是巢狀序列,或者如果需要副本以滿足任何其他要求(dtypeorder 等)。對於 False,如果無法避免複製,則會引發 ValueError。預設值:None

在 2.1.0 版本中新增。

likearray_like, optional

參考物件,允許建立非 NumPy 陣列的陣列。如果作為 like 傳入的類陣列物件支援 __array_function__ 協定,則結果將由其定義。在這種情況下,它確保建立與透過此引數傳入的物件相容的陣列物件。

在 1.20.0 版本中新增。

傳回值:
outndarray 或 ndarray 子類別

a 的陣列解釋。如果 a 是 ndarray 或 ndarray 的子類別,則按原樣傳回,並且不執行複製。

另請參閱

asarray

始終傳回 ndarray 的類似函數。

ascontiguousarray

將輸入轉換為連續陣列。

asfortranarray

將輸入轉換為具有 column-major 記憶體順序的 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