numpy.ndarray.astype#
方法
- ndarray.astype(dtype, order='K', casting='unsafe', subok=True, copy=True)#
陣列的副本,轉換為指定的型別。
- 參數:
- dtypestr 或 dtype
陣列要轉換成的型別代碼或資料型別。
- order{‘C’, ‘F’, ‘A’, ‘K’}, 選項性
控制結果的記憶體佈局順序。「C」表示 C 順序,「F」表示 Fortran 順序,「A」表示如果所有陣列都是 Fortran 連續的則為「F」順序,否則為「C」順序,「K」表示盡可能接近陣列元素在記憶體中出現的順序。預設為「K」。
- casting{‘no’, ‘equiv’, ‘safe’, ‘same_kind’, ‘unsafe’}, 選項性
控制可能發生的資料型別轉換種類。為了向後相容性,預設為「unsafe」。
「no」表示不應轉換資料型別。
「equiv」表示僅允許位元組順序變更。
「safe」表示僅允許可以保留值的轉換。
「same_kind」表示僅允許安全轉換或種類內的轉換,例如 float64 到 float32。
「unsafe」表示可以進行任何資料轉換。
- subokbool,選項性
如果為 True,則子類別將被傳遞(預設),否則傳回的陣列將被強制為基底類別陣列。
- copybool,選項性
預設情況下,astype 總是傳回新分配的陣列。如果將此項設定為 False,並且滿足
dtype
、order 和 subok 需求,則會傳回輸入陣列而不是副本。
- 傳回值:
- 引發:
- ComplexWarning
當從複數轉換為浮點數或整數時。為了避免這種情況,應該使用
a.real.astype(t)
。
範例
>>> import numpy as np >>> x = np.array([1, 2, 2.5]) >>> x array([1. , 2. , 2.5])
>>> x.astype(int) array([1, 2, 2])