Список кортежей – это мощная структура данных в Python, которая объединяет изменяемость списков и неизменяемость кортежей. Это полезно для организации данных, которые логически сгруппированы, но не должны изменяться, как например координаты точек или записи базы данных. В этой статье мы подробно рассмотрим, как создать список кортежей несколькими способами.
Ручное создание списка кортежей
Рассмотрим простой пример, где мы создаем список кортежей вручную:
Пример 1: Создание списка кортежей вручную
# Создание списка кортежей вручную
list_of_tuples = [(1, 2), (3, 4), (5, 6)]
print(list_of_tuples)
Объяснение
- Мы создаем список с именем
list_of_tuples
. - Внутри списка мы создаем три кортежа:
(1, 2)
,(3, 4)
и(5, 6)
. - Мы выводим содержимое списка, чтобы убедиться, что он был создан правильно.
Создание списка кортежей с использованием циклов
Часто списки кортежей создаются динамически, например, с использованием циклов. Это полезно, когда кортежи зависят от условий или вычислений.
Пример 2: Использование цикла for
Рассмотрим пример, где мы используем цикл for
для создания списка кортежей:
# Создание списка кортежей с использованием цикла for
list_of_tuples = []
for i in range(1, 6):
tuple_item = (i, i * 2)
list_of_tuples.append(tuple_item)
print(list_of_tuples) # Вывод: [(1, 2), (2, 4), (3, 6), (4, 8), (5, 10)]
Объяснение
- Мы создаем пустой список
list_of_tuples
. - Используем цикл
for
, который проходит по значениям от 1 до 5. - Внутри цикла мы создаем кортеж
tuple_item
, где первый элемент равен текущему значениюi
, а второй элемент равенi * 2
. - Добавляем созданный кортеж в список
list_of_tuples
с помощью методаappend()
. - После завершения цикла выводим содержимое списка.
Создание списка кортежей с помощью генератора списков
Генераторы списков (list comprehensions) – это мощный инструмент для создания списков в Python. Они позволяют создавать списки с использованием более компактного и читабельного синтаксиса.
Пример 3: Использование генераторов списков
# Создание списка кортежей с использованием генератора списков
list_of_tuples = [(i, i * 2) for i in range(1, 6)]
print(list_of_tuples) # Вывод: [(1, 2), (2, 4), (3, 6), (4, 8), (5, 10)]
Объяснение
- Мы создаем список кортежей с использованием генератора списков.
- Генератор проходит по значениям от 1 до 5.
- Для каждого значения
i
создается кортеж(i, i * 2)
, который добавляется в списокlist_of_tuples
. - Мы выводим содержимое списка, чтобы убедиться, что он был создан правильно.