Модули

Руководство по массивам NumPy

Что такое массивы NumPy?

Массивы NumPy несколько напоминают списки Python, но в то же время между ними есть много отличий. Для тех, кто не в теме, мы сейчас расскажем, что есть что.

Как видно уже из названия, массивы NumPy это ключевая структура данных всей библиотеки. Кстати, само имя библиотеки это акроним Numeric или Numerical Python.

Создание массива NumPy

Проще всего массив NumPy создать из списка Python.

myPythonList = [1,9,8,3]

Преобразование списка в массив NumPy производится при помощи объекта np.array.

numpy_array_from_list = np.array(myPythonList)

Для вывода на экран результата просто наберем:

numpy_array_from_list

Output:

array([1, 9, 8, 3])

На практике эти операции можно объединить в одну:

a  = np.array([1,9,8,3])

Примечание: в документации Python для создания массива используется метод np.ndarray(). Однако описанный нами метод также является рекомендованным.

Таким же образом массив NumPy может быть создан и из кортежа.

Математические операции с массивами

Для массивов NumPy определены все основные арифметические операции: сложение, умножение, вычитание и деление. Синтаксис тоже обычный: имя массива, а за ним оператор(+, *, — , /)

Пример:

numpy_array_from_list + 10

Output:

array([11, 19, 18, 13])

В результате данной операции к каждому элементу массива прибавилось число 10.

Размерность массивов

Размерность массива можно определить с помощью объекта shape, написав его сразу после имени массива. Таким же образом, с помощью dtype, можно определить тип массива.

import numpy as np
a  = np.array([1,2,3])
print(a.shape)
print(a.dtype)

(3,)
int64

Тип integer не может содержать значений с плавающей запятой. Поэтому если вы создаете массив с такими значениями, его тип будет float.

#### Different type
b  = np.array([1.1,2.0,3.2])
print(b.dtype)

float64

Двумерные массивы

Размерность можно добавить с помощью запятой. Обратите внимание, что все это должно быть в квадратных скобках [].

### 2 dimension
c = np.array([(1,2,3),
              (4,5,6)])
print(c.shape)
(2, 3)

Трехмерные массивы

Массивы высших размерностей можно создавать следующим образом:

### 3 dimension
d = np.array([
    [[1, 2,3],
        [4, 5, 6]],
    [[7, 8,9],
        [10, 11, 12]]
])
print(d.shape)
(2, 2, 3)

Заключение

В этой главе мы рассмотрели функцию для создания массивов — array([1,2,3]), а также функцию для вывода размерности массива — array([.]).shape.

Ilyaragalin

Recent Posts

10 удалённых Python-вакансий

Если вы ищете работу на Python, на Talanto.work сейчас есть варианты для junior, middle, senior…

6 месяцев ago

Где искать Python-вакансии в 2026 году: зачем на Talanto.work появился отдельный сценарий поиска

Рынок Python-вакансий большой, но удобным его назвать сложно. Формально вакансий много, однако в реальном поиске…

6 месяцев ago

Срезы в Python со всеми подробностями

Срезы в Python — это больше, чем a[2:7]. В статье — быстрый разбор полезных приёмов:…

8 месяцев ago

Возведение в степень в Python: полное руководство

В этой статье мы рассмотрим возведение в степень в Python с помощью различных методов, от…

9 месяцев ago

Как удалить дубликаты из списка Python?

Дубликаты в списке Python — частая проблема. В статье показано, как быстро убрать повторы, в…

9 месяцев ago

Виртуальный (shared) хостинг от SpaceWeb: технический обзор

Услуга виртуального хостинга на SpaceWeb позволяет арендовать часть сервера (shared-сервера) и разместить на нём свой…

11 месяцев ago