Курс Python → Генераторы в Python
Генераторы (generators) — это мощный инструмент в Python, который позволяет создавать итераторы, способные генерировать значения на лету. Они позволяют экономить память, так как не требуется хранить все значения в памяти сразу. Генераторы могут быть особенно полезны, когда нужно обработать большой объем данных или когда требуется выполнять итерацию только один раз.
Пример использования генератора в Python:
def my_generator(n):
for i in range(n):
yield i ** 2
squares = my_generator(5)
for square in squares:
print(square)
В данном примере мы создаем генератор my_generator, который возвращает квадраты чисел от 0 до n-1. Функция yield используется для возврата следующего элемента генератора, при этом сохраняется состояние функции. Это позволяет продолжить выполнение функции с того же места, где она была приостановлена.
После создания генератора мы используем цикл for для итерации по элементам генератора squares. При каждой итерации получаем следующее значение из генератора, что позволяет нам получить квадраты чисел от 0 до 4. После прохождения всех элементов генератора итерация завершается.
Использование генераторов в Python позволяет сделать код более эффективным и понятным. Они позволяют легко создавать итераторы для обработки данных, особенно в случаях, когда требуется работать с большими объемами данных или когда нужно выполнить итерацию только один раз.
Другие уроки курса "Python"
- Встраивание HTML в Jupyter Notebook
- Игра «Виселица» на Python
- Применение функции map() с лямбда-функциями
- Удаление ключей из словаря
- Получение локальных переменных в Python
- Блок else в обработке исключений
- Оформление текста в консоли с TermColor
- Умножение строк и списков
- ChainMap избыточные ключи
- Многострочные комментарии в Python
- Python и Юникод: работа с цифрами
- Работа с необработанными строками
- Анализ текста на русском языке с помощью Pymystem3
- Функция с *args.
- Измерение времени выполнения кода
- Печать комбинаций в Python с Itertools
- Роль object и type в Python
- Комплексные числа в Python
- Кортеж в Python: создание, доступ, изменение
- Отладка в командной строке
- Анонимные функции в Python
- Возведение в квадрат с помощью itertools
- Метод ipow для возведения в степень
- Модуль inspect
- Python union() функция — объединение множеств
- Получение имени функции с помощью inspect
- Асинхронное программирование с asyncio
- Итераторы в Python
- Сериализация данных в JSON с помощью json.dumps
- Улучшение читаемости кода в Python
- Расчет времени выполнения
- Получение обратного списка чисел
- JSON-esque в Python
- Создание .exe файла с pyinstaller
- Перевод двоичного кода в целое число
- Работа со слайсами
- Работа с рекламными данными в Pandas
- Извлечение аудио из видео
- Python Метод sleep() из time
- Аргумент по умолчанию
- TON Smart Challenge #2: участие и подготовка
- Вывод букв строки в Python
- Конвертация коллекций в Python
- Работа со словарями в Python
- Оптимизация поиска в словарях















