Курс Python → Генераторы в Python
Генераторы (generators) в Python представляют собой специальный тип функций, которые позволяют создавать итераторы. Они позволяют нам создавать последовательности значений, не занимая много памяти, так как значения генерируются по требованию.
Давайте рассмотрим пример генератора my_range, который создает итератор, возвращающий числа от start до stop с заданным шагом step:
def my_range(start, stop, step):
while start < stop:
yield start
start += step
В данном примере функция my_range использует ключевое слово yield для возврата значений по одному при каждом вызове функции next(). Таким образом, мы можем итерироваться по результатам генератора, не занимая лишнюю память для хранения всей последовательности чисел.
Использование генераторов особенно удобно при работе с большими объемами данных, когда создание списка значений занимает много ресурсов. Генераторы позволяют нам эффективно обрабатывать данные в потоке, по мере их генерации, что повышает производительность программы.
Другие уроки курса "Python"
- Создание Radio кнопок в tkinter
- Сериализация и десериализация объектов
- Создание генераторов в Python
- Создание итерируемых объектов
- Фильтрация списка чисел
- Оптимизация интернирования строк
- Работа с дробями в Python
- Равенство и идентичность в Python
- Изменение IP-адреса в Python
- Скрытие вывода данных
- Отправка POST-запроса в REST API
- Применение функции к списку
- Работа с переменными в Python
- Логирование с Logzero: ротация файла
- Декораторы в Python
- Уникальность ключей в словаре
- 9 уловок для чистого кода
- Генераторные выражения и islice.
- Декодирование строк в Python
- Конкатенация строк с join() в Python
- Генерация резюме в Gensim
- Удаление дубликатов с сохранением порядка с помощью dict.fromkeys
- Создание Telegram-бота на Python
- Поиск кода
- Запуск внешнего кода в Jupyter
- Команда %dhist — список посещенных каталогов
- Работа со строками
- Проверка списка: any() и all()
- Работа со строками в Python
- Упрощение работы с JSON-данными в Python
- Измерение времени выполнения кода
- Метод clear для коллекций
- Получение комбинаций в Python
- Эффективная конкатенация строк с использованием join()
- Генераторы списков в Python
- Метод rmatmul для обратного матричного умножения
- Строки в Python: апострофы и кавычки
- Функция enumerate() в Python
- Форматирование вывода с F-строками
- Функции all() и any() в Python
- Декораторы классов
- Работа с Event() в threading
- Создание матрицы в Python
- Библиотека Rich: форматирование текста
- Генерация случайных чисел Python















