numpy.copy#

numpy.copy(a, порядок='K', subok=False)[источник]#

Возвращает копию массива данного объекта.

Параметры:
aarray_like

Входные данные.

порядок{‘C’, ‘F’, ‘A’, ‘K’}, опционально

Управляет расположением в памяти копии. 'C' означает порядок C, 'F' означает порядок F, 'A' означает 'F', если a является Fortran смежным, 'C' в противном случае. 'K' означает соответствие макету a как можно ближе. (Обратите внимание, что эта функция и ndarray.copy очень похожи, но имеют разные значения по умолчанию для своих аргументов order=.)

subokbool, необязательно

Если True, то подклассы будут пропущены, в противном случае возвращаемый массив будет принудительно преобразован в массив базового класса (по умолчанию False).

Возвращает:
arrndarray

Интерпретация массива как a.

Смотрите также

ndarray.copy

Предпочтительный метод создания копии массива

Примечания

Это эквивалентно:

>>> np.array(a, copy=True)  

Созданная копия данных является поверхностной, то есть для массивов с dtype object новый массив будет указывать на те же объекты. См. примеры из 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])