numpy.copy#
- numpy.copy(a, order='K', subok=False)[原始碼]#
傳回給定物件的陣列副本。
- 參數:
- aarray_like
輸入資料。
- order{‘C’, ‘F’, ‘A’, ‘K’}, optional
控制副本的記憶體配置。「C」表示 C-order,「F」表示 F-order,「A」表示如果 a 是 Fortran 連續的則為 ‘F’,否則為 ‘C’。「K」表示盡可能匹配 a 的配置。(請注意,此函數和
ndarray.copy
非常相似,但它們的 order= 引數有不同的預設值。)- subokbool, optional
如果為 True,則子類別將被傳遞,否則傳回的陣列將被強制為基底類別陣列 (預設為 False)。
- 傳回值:
- arrndarray
a 的陣列解釋。
另請參閱
ndarray.copy
建立陣列副本的偏好方法
註解
這等同於
>>> np.array(a, copy=True)
資料的副本是淺層複製,也就是說,對於具有物件 dtype 的陣列,新陣列將指向相同的物件。請參閱
ndarray.copy
中的範例。範例
>>> import numpy as np
建立陣列 x,具有參考 y 和副本 z
>>> x = np.array([1, 2, 3]) >>> y = x >>> z = np.copy(x)
請注意,當我們修改 x 時,y 會變更,但 z 不會
>>> x[0] = 10 >>> x[0] == y[0] True >>> x[0] == z[0] False
請注意,np.copy 會清除先前設定的 WRITEABLE=False 旗標。
>>> a = np.array([1, 2, 3]) >>> a.flags["WRITEABLE"] = False >>> b = np.copy(a) >>> b.flags["WRITEABLE"] True >>> b[0] = 3 >>> b array([3, 2, 3])