Генераторы коллекций

Что такое list, set, dict comprehensions?

подробнее

Коллекция в программирование это объект, который содержит в себе другие объекты, и предоставляет открытый интерфейс для доступа к этим данных.

Comprehensions (или генераторы коллекций) — это лаконичный и читабельный способ создания списков, множеств и словарей в Python с помощью одной строки кода. Они позволяют совместить цикл и условные конструкции для создания новой коллекции на основе существующей.

Синтаксис:

  • list comprehension - [expression for item in iterable if condition]
  • set comprehension - {expression for item in iterable if condition}
  • dict comprehension - {key_expression: value_expression for item in iterable if condition}

Пример:

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

# Создание списка через стандартный цикл for
numbers_squares = []
for number in numbers:
    numbers_squares.append(number ** 2)

# Создание списка с помощью генератора списков
numbers_squares_ = [number ** 2 for number in numbers]

При работе с большими объёмами данных лучше использовать генераторные выражения для экономии памяти. - (expression for item in iterable if condition)