numpy.ascontiguousarray
numpy.ascontiguousarray(a, dtype=None)
Функция ascontiguousarray() возвращает непрерывный массив в памяти с организацией порядка элементов в С-стиле.
-
- a - некоторая последовательность
- Входные данные которые могут быть преобразованы в массив: списки и кортежи, списки списков и кортежи кортежей, списки кортежей и кортежи списков, а так же кортежи или списки других массивов NumPy.
- dtype - тип данных NumPy (необязательный)
- Определяет тип данных выходного массива.
-
- результат - массив NumPy
- Интерпретирует входные данные
a
как массив NumPy, с порядком организации в памяти в С-стиле (эквивалентноarray(a, dtype, copy=False, order='C', ndmin=1)
). Если в качествеa
передан существующий массив NumPy, с порядком организации в памяти отличным от C-стиля, то он будет к нему приведен. Если указать параметр dtype, то он изменит тип данных выходного массива.
Смотрите так же:
asfortranarray
Примеры
>>> import numpy as np
>>>
>>> # Преобразование последовательностей в массив NumPy:
... a = [1, 2, 3]
>>>
>>>np.ascontiguousarray(a)
array([1, 2, 3])
>>>
>>>
>>> # Создаваемые массивы имеют порядок в С-стиле:
... a = np.array([[1, 2], [3, 4]])
>>> a
array([[1, 2],
[3, 4]])
>>>
>>> a.flags['C_CONTIGUOUS']
True
>>>
>>> b = a.T # Транспонирование меняет порядок с 'C' на 'F':
>>> b
array([[1, 3],
[2, 4]])
>>>
>>> b.flags['C_CONTIGUOUS']
False
>>>
>>> # Мы можем изменить порядок на 'C':
... b = np.ascontiguousarray(b)
>>> b.flags['C_CONTIGUOUS']
True
>>> b # Не изменяя форму и содержимое самого массива
array([[1, 3],
[2, 4]])