Numpy — это основная библиотека Python для научных вычислений. Numpy содержит набор инструментов, таких как массивы и методы, которые можно использовать для решения математических моделей задач в области науки и техники.
Массив Numpy — это центральная структура данных библиотеки numpy. Массивы Numpy немного похожи на списки Python, но в то же время очень разные. В данном руководстве рассмотрим как перевернуть массив Numpy в Python.
Определение
Чтобы определить массив, мы можем использовать функцию np.array().
|
1 2 3 4 |
import numpy as np data = np.array([1, 2, 4]) print(data) |
Выход:
|
1 |
[1 2 4] |
Чтобы получить форму массива, мы можем использовать свойство np.shape.
|
1 2 3 4 |
import numpy as np data = np.array([1, 2, 4]) print(data.shape) |
Выход:
|
1 |
(3,) |
Поскольку после запятой нет значения, это одномерный массив.
Получение тип данных
Numpy array.astype — это свойство, которое помогает нам получить тип данных массива.
|
1 2 3 4 |
Выход:
|
1 |
<built-in method astype of numpy.ndarray object at 0x101db6e40> |
Создание одномерного массива
Используя функцию np.arange(), мы можем создать одномерный массив с заполненными значениями.
|
1 2 3 4 |
import numpy as np data = np.arange(5) print(data) |
Выход:
|
1 |
[0 1 2 3 4] |
Массивы Numpy являются изменяемыми, что означает, что вы можете изменить значение элемента в массиве после того, как массив был инициализирован.
|
1 2 3 4 5 6 7 8 |
import numpy as np data = np.arange(5) print(data) print('After modifying the array:') data[2] = 21 print(data) |
Выход:
|
1 |
[ 0 1 21 3 4] |
Обратный массив Numpy

Метод Numpy flipud() помогает нам перевернуть массив numpy. Но это работает отлично только с одномерным массивом.
|
1 2 3 4 5 6 7 8 |
import numpy as np data = np.arange(5) print(data) print('After reversing the array using np.flipud(): ') reversed_arr = np.flipud(data) print(reversed_arr) |
Выход:
|
1 2 3 |
[0 1 2 3 4] After reversing the array using np.flipud(): [4 3 2 1 0] |
Есть еще один способ перевернуть массив numpy.
Обратный двумерный массив numpy
Если вы хотите перевернуть двумерный массив слева направо, вы можете использовать метод np.fliplr().
|
1 2 3 4 5 6 7 8 |
import numpy as np data = np.array([[1, 2], [3, 4]]) print(data) print('After reversing the array using np.fliplr(): ') reversed_arr = np.fliplr(data) print(reversed_arr) |
Выход:
|
1 2 3 4 5 |
[[1 2] [3 4]] After reversing the array using np.fliplr(): [[2 1] [4 3]] |
В выводе вы можете видеть, что и первая, и вторая строка перевернута.
Переворот массива numpy с помощью arr[::-1]
Когда вы создаете обратный массив с помощью [::], вы создаете представление в исходном массиве. Затем вы можете изменить исходный массив, и представление будет обновлено, чтобы отразить изменения.
|
1 2 3 4 5 6 7 |
import numpy as np data = np.arange(5) print(data) print('After reversing the array using [::-1]: ') print(data[::-1]) |
Выход:
|
1 2 3 |
[0 1 2 3 4] After reversing the array using [::-1]: [4 3 2 1 0] |
data[::-1] просто возвращает обратный вид. Операция настолько быстрая, насколько это возможно, и она не зависит от количества элементов в массиве, поскольку она только изменяет шаги.
Если вам нужно, чтобы массив был непрерывным (например, потому что вы выполняете много векторных операций с ним), непрерывный массив примерно так же быстр, как методы flipup/fliplr.
