Порядок C в NumPy
В порядке C элементы идут строка за строкой. Соседние ячейки одной строки лежат в памяти рядом. Так устроены многие таблицы по умолчанию.
Признак непрерывности в этом порядке
хранится в flags под ключом
C_CONTIGUOUS. Проверим его
у таблицы из двух строк:
import numpy as np
table = np.array([[1, 2, 3], [4, 5, 6]])
print(table.flags['C_CONTIGUOUS']) # выведет True
Если массив в памяти расположен
не так, его можно привести к порядку
C функцией ascontiguousarray.
Она вернёт тот же объект или копию,
где строки лежат подряд:
import numpy as np
table = np.array([[1, 2, 3], [4, 5, 6]])
ordered = np.ascontiguousarray(table)
print(ordered.flags['C_CONTIGUOUS']) # выведет True
Создайте таблицу [[2, 4], [6, 8]]
и выведите, помечена ли она как
непрерывная в порядке C.
Создайте одномерный ряд из четырёх чисел и выведите тот же признак непрерывности в порядке C.