В Python для представления массивов чаще всего используют списки. Списки — это универсальный и гибкий тип данных, который позволяет хранить элементы различного типа (числа, строки, другие списки и т.д.).
Создание списка (массива)
1. Пустой список:
Python
my_list = []
2. Список с предопределенными элементами:
Python
numbers = [1, 2, 3, 4, 5]
fruits = ["яблоко", "банан", "груша"]
mixed = [10, "hello", 3.14]
3. Список с использованием генератора списков (для более сложных случаев):
Python
squares = [x**2 for x in range(10)] # Список квадратов чисел от 0 до 9
Доступ к элементам
- Индексация: Начинается с 0.Pythonfirst_element = numbers[0] # Получим 1
Срезы: Извлечение части списка.
Python
sublist = numbers[1:4] # Получим [2, 3, 4]
Отрицательные индексы: С конца списка.
Python
last_element = numbers[-1] # Получим 5
Изменение элементов
Python
numbers[2] = 10 # Заменим третий элемент на 10
Добавление элементов
- В конец:
Python
- fruits.append("апельсин")
В любое место:
Python
numbers.insert(2, 6) # Вставим 6 на позицию с индексом 2
Удаление элементов
- По значению:
Python
fruits.remove("банан")
По индексу:
Python
del numbers[0]
Основные операции со списками
- Длина списка: len(numbers)
- Проверка на наличие элемента: if 3 in numbers:
- Сложение списков: new_list = numbers + fruits
- Повторение элементов: repeated = [0] * 5 (получим [0, 0, 0, 0, 0])
Когда использовать списки
- Хранение упорядоченной коллекции элементов: Например, список студентов в группе.
- Работа с последовательностями: Для итерации по элементам, например, в циклах for.
- Реализация стеков, очередей и других структур данных.
Когда использовать NumPy массивы
- Численные вычисления: NumPy предоставляет высокоэффективные функции для работы с массивами чисел.
- Многомерные массивы: Для работы с матрицами и тензорами.
- Интеграция с научными библиотеками: Такие как SciPy, Matplotlib и т.д.
Выбор между списками и NumPy массивами зависит от конкретной задачи:
- Для большинства задач, связанных с обработкой данных, списки вполне подходят.
- Если вам нужны высокопроизводительные вычисления с большими массивами чисел, то NumPy будет более эффективным выбором.
Пример с NumPy:
Python
import numpy as np
# Создаем NumPy массив my_array = np.array([1, 2, 3, 4, 5])
# Выполняем операции поэлементно result = my_array * 2 # Умножим каждый элемент на 2