Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг Управление проектами
24 Янв 2023
2 мин
3073

Что такое списковые включения в Python

Узнайте, что такое списковые включения в Python, как их использовать и когда выбирать альтернативы для более понятного кода.

Списковые включения (list comprehensions) – это удобный и компактный синтаксис для создания списков в Python. Они позволяют создавать новые списки, применяя выражение к каждому элементу итерируемого объекта, и, при необходимости, фильтровать элементы с помощью условий. В результате код становится более читаемым и быстрым.

Примеры использования списковых включений

Создание списка квадратов чисел

squares = [x ** 2 for x in range(1, 6)]
print(squares)  # вывод: [1, 4, 9, 16, 25]

Фильтрация элементов списка

even_numbers = [x for x in range(1, 11) if x % 2 == 0]
print(even_numbers)  # вывод: [2, 4, 6, 8, 10]

Вложенные списковые включения

matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

flattened = [num for row in matrix for num in row]
print(flattened)  # вывод: [1, 2, 3, 4, 5, 6, 7, 8, 9]

Альтернативы списковым включениям

Хотя списковые включения являются удобным инструментом, иногда их использование может усложнить чтение кода. В таких случаях следует использовать обычные циклы или другие функциональные возможности Python, такие как функция map() и filter().

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

squares = []
for x in range(1, 6):
    squares.append(x ** 2)
print(squares)  # вывод: [1, 4, 9, 16, 25]

Пример с использованием функции map()

squares = list(map(lambda x: x ** 2, range(1, 6)))
print(squares)  # вывод: [1, 4, 9, 16, 25]

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

Проверь как ты усвоил материалы статьи
Пройди тест и узнай насколько ты лучше других читателей

Добавить комментарий