Введение в коллекции Python

Пройдите тест, узнайте какой профессии подходите

Я предпочитаю
0%
Работать самостоятельно и не зависеть от других
Работать в команде и рассчитывать на помощь коллег
Организовывать и контролировать процесс работы

Коллекции в Python представляют собой мощный инструмент для хранения и управления данными. В этой статье мы рассмотрим основные типы коллекций, такие как списки, кортежи, множества и словари. Понимание этих структур данных поможет вам эффективно работать с различными наборами данных в ваших программах. Коллекции позволяют организовать данные в удобной форме и предоставляют множество методов для их обработки.

Списки (List): Основы и операции

Списки в Python — это изменяемые последовательности, которые могут содержать элементы разных типов. Они позволяют хранить несколько элементов в одном объекте и предоставляют множество методов для работы с ними. Списки являются одним из самых часто используемых типов данных в Python благодаря своей гибкости и удобству.

Кинга Идем в IT: пошаговый план для смены профессии

Создание списка

Создать список можно с помощью квадратных скобок. Списки могут содержать элементы любого типа, включая другие списки:

Python
Скопировать код
my_list = [1, 2, 3, 4, 5]
nested_list = [1, [2, 3], 4, 5]

Основные операции со списками

  • Добавление элементов: Используйте метод append() для добавления элемента в конец списка. Также можно использовать метод extend() для добавления нескольких элементов.
Python
Скопировать код
my_list.append(6)  # [1, 2, 3, 4, 5, 6]
my_list.extend([7, 8])  # [1, 2, 3, 4, 5, 6, 7, 8]
  • Удаление элементов: Метод remove() удаляет первый найденный элемент с указанным значением. Метод pop() удаляет элемент по индексу и возвращает его.
Python
Скопировать код
my_list.remove(3)  # [1, 2, 4, 5, 6, 7, 8]
removed_element = my_list.pop(2)  # [1, 2, 5, 6, 7, 8], removed_element = 4
  • Доступ к элементам: Используйте индексацию для доступа к элементам списка. Индексация начинается с нуля.
Python
Скопировать код
first_element = my_list[0]  # 1
last_element = my_list[-1]  # 8
  • Изменение элементов: Вы можете изменять элементы списка по их индексу. Списки также поддерживают срезы для изменения нескольких элементов одновременно.
Python
Скопировать код
my_list[1] = 10  # [1, 10, 5, 6, 7, 8]
my_list[2:4] = [20, 30]  # [1, 10, 20, 30, 7, 8]

Пример использования списка

Списки часто используются для хранения и обработки данных в циклах и функциях. Рассмотрим пример с фруктами:

Python
Скопировать код
fruits = ["apple", "banana", "cherry"]
fruits.append("orange")
print(fruits)  # ['apple', 'banana', 'cherry', 'orange']

for fruit in fruits:
    print(fruit)
# apple
# banana
# cherry
# orange

Кортежи (Tuple): Неизменяемые последовательности

Кортежи похожи на списки, но они неизменяемы. Это означает, что после создания кортежа его элементы нельзя изменять. Кортежи полезны, когда нужно сохранить данные в неизменном виде.

Создание кортежа

Кортеж создается с помощью круглых скобок. Кортежи могут содержать элементы разных типов, включая другие кортежи и списки:

Python
Скопировать код
my_tuple = (1, 2, 3, 4, 5)
nested_tuple = (1, (2, 3), 4, 5)

Основные операции с кортежами

  • Доступ к элементам: Как и в списках, доступ к элементам кортежа осуществляется с помощью индексов. Кортежи также поддерживают срезы.
Python
Скопировать код
first_element = my_tuple[0]  # 1
last_element = my_tuple[-1]  # 5
slice_tuple = my_tuple[1:3]  # (2, 3)
  • Изменение элементов: Попытка изменить элемент кортежа приведет к ошибке. Это делает кортежи безопасными для хранения данных, которые не должны изменяться.
Python
Скопировать код
# my_tuple[1] = 10  # TypeError: 'tuple' object does not support item assignment

Пример использования кортежа

Кортежи часто используются для возвращения нескольких значений из функции или для хранения данных, которые не должны изменяться:

Python
Скопировать код
coordinates = (10.0, 20.0)
print(coordinates[0])  # 10.0

def get_coordinates():
    return (10.0, 20.0)

x, y = get_coordinates()
print(x, y)  # 10.0 20.0

Множества (Set): Уникальные элементы

Множества — это неупорядоченные коллекции уникальных элементов. Они полезны, когда нужно хранить только уникальные значения и выполнять операции над множествами, такие как объединение, пересечение и разность.

Создание множества

Множество создается с помощью фигурных скобок или функции set(). Множества не поддерживают дублирование элементов:

Python
Скопировать код
my_set = {1, 2, 3, 4, 5}
empty_set = set()

Основные операции с множествами

  • Добавление элементов: Метод add() добавляет элемент в множество. Если элемент уже существует, он не будет добавлен повторно.
Python
Скопировать код
my_set.add(6)  # {1, 2, 3, 4, 5, 6}
my_set.add(3)  # {1, 2, 3, 4, 5, 6} (3 уже существует)
  • Удаление элементов: Метод remove() удаляет элемент из множества. Если элемент не существует, будет вызвана ошибка. Метод discard() удаляет элемент, если он существует, без вызова ошибки.
Python
Скопировать код
my_set.remove(3)  # {1, 2, 4, 5, 6}
my_set.discard(7)  # {1, 2, 4, 5, 6} (7 не существует, но ошибки нет)
  • Проверка наличия элемента: Используйте оператор in для проверки наличия элемента в множестве. Это позволяет быстро проверять, содержится ли элемент в множестве.
Python
Скопировать код
is_present = 4 in my_set  # True
is_present = 7 in my_set  # False

Пример использования множества

Множества часто используются для удаления дубликатов из списка или для выполнения математических операций над множествами:

Python
Скопировать код
unique_numbers = {1, 2, 3, 4, 5}
unique_numbers.add(3)  # {1, 2, 3, 4, 5}
print(unique_numbers)  # {1, 2, 3, 4, 5}

list_with_duplicates = [1, 2, 2, 3, 4, 4, 5]
unique_list = list(set(list_with_duplicates))
print(unique_list)  # [1, 2, 3, 4, 5]

Словари (Dictionary): Ключ-значение пары

Словари — это изменяемые коллекции, которые хранят пары "ключ-значение". Они позволяют быстро находить значения по ключам. Словари особенно полезны для хранения данных, которые должны быть связаны с уникальными ключами.

Создание словаря

Словарь создается с помощью фигурных скобок и двоеточий для разделения ключей и значений. Ключи должны быть уникальными и неизменяемыми (например, строки или числа):

Python
Скопировать код
my_dict = {"name": "Alice", "age": 25, "city": "New York"}
empty_dict = {}

Основные операции со словарями

  • Добавление и изменение элементов: Вы можете добавлять новые пары "ключ-значение" или изменять существующие. Если ключ уже существует, его значение будет обновлено.
Python
Скопировать код
my_dict["email"] = "alice@example.com"
my_dict["age"] = 26
  • Удаление элементов: Метод pop() удаляет элемент по ключу и возвращает его значение. Метод del удаляет элемент по ключу без возвращения значения.
Python
Скопировать код
city = my_dict.pop("city")  # {'name': 'Alice', 'age': 26, 'email': 'alice@example.com'}, city = 'New York'
del my_dict["email"]  # {'name': 'Alice', 'age': 26}
  • Доступ к значениям: Используйте ключи для доступа к значениям. Метод get() возвращает значение по ключу, если ключ существует, иначе возвращает None или заданное значение по умолчанию.
Python
Скопировать код
name = my_dict["name"]  # 'Alice'
age = my_dict.get("age", 0)  # 26
email = my_dict.get("email", "not provided")  # 'not provided'

Пример использования словаря

Словари часто используются для хранения и обработки данных, которые должны быть связаны с уникальными ключами, такими как данные о пользователях или конфигурации:

Python
Скопировать код
person = {"name": "Bob", "age": 30}
person["city"] = "San Francisco"
print(person)  # {'name': 'Bob', 'age': 30, 'city': 'San Francisco'}

for key, value in person.items():
    print(f"{key}: {value}")
# name: Bob
# age: 30
# city: San Francisco

Понимание и умение работать с этими коллекциями поможет вам эффективно управлять данными в ваших программах на Python. Коллекции предоставляют мощные инструменты для организации, хранения и обработки данных, что делает их незаменимыми в повседневной разработке.

Читайте также