Курс Python → Генераторы в Python
Генераторы в Python — это удобный способ создания последовательностей значений без необходимости хранить их все сразу в памяти. Они позволяют генерировать значения по мере необходимости, что экономит ресурсы и увеличивает производительность программы. Для создания генератора используется ключевое слово yield, которое указывает на точку возврата значения и временную остановку выполнения функции.
Преимущества использования генераторов становятся особенно заметными при работе с большими объемами данных или при генерации бесконечных последовательностей. Например, нам нужно сгенерировать квадраты чисел от 0 до 9. Мы можем создать генератор, который будет выглядеть следующим образом:
def squares_generator():
for i in range(10):
yield i**2
squares = squares_generator()
for square in squares:
print(square)
В данном примере функция squares_generator() является генератором, который при каждой итерации цикла for возвращает квадрат числа i. Таким образом, мы можем получить последовательность квадратов чисел от 0 до 9, не храня все значения в памяти одновременно.
Использование генераторов позволяет сократить объем потребляемой памяти и улучшить производительность программы. Кроме того, генераторы обеспечивают ленивое вычисление значений, что позволяет эффективно работать с большими объемами данных. При необходимости можно легко изменить логику генерации значений, добавив новые условия или модифицируя существующие.
Другие уроки курса "Python"
- Оператор continue в Python
- Генераторные выражения и islice.
- Основы слова
- Dict Comprehension в Python
- Отступы в Python
- Возведение в квадрат с помощью itertools
- Цепные операции в Python
- Python Менеджер контекста
- Создание списков в Python
- Метод ipow для возведения в степень
- Блок else в обработке исключений
- Изменение списка срезом
- Обработка исключений
- Создание матрицы в Python
- Метод radd для пользовательских чисел
- Цикл for в Python
- Работа с Path в Python
- Комментарии в Python
- Загрузка постов Instagram
- Создание комплексных чисел
- Визуализация пропусков данных
- Форматирование вывода списков
- Сравнение объектов в Python
- Округление в Python
- Генераторы данных
- Установка пакета в Python
- Асинхронное программирование с asyncio
- Манипуляция формой массива в Numpy
- Множества и frozenset
- Разделение строки с помощью re.split()
- Метод join для объединения строк
- Python: библиотеки и функции
- Проверка типов с использованием isinstance
- Python Enum Weekday Usage
- Активация Matplotlib в Jupyter
- Python Translator: создание локальных переводчиков
- Flask: создание веб-приложений
- Функция pow() — возвести число в степень
- Установка переменной среды в Python
- Регистрация на курсы SF Education
- Создание и удаление объектов
- Progress с библиотекой tqdm
- Повторение элементов списков
- Создание списка дат
- Построение графиков в Matplotlib
- Проверка класса объекта
- Импорт в Python: список all















