Курс Python → Генератор чисел Фибоначчи
Для создания генератора в Python можно использовать ключевое слово yield. Это позволяет создать функцию, которая будет возвращать последовательность значений, не храня их все сразу в памяти, что позволяет экономить ресурсы. Например, рассмотрим функцию fib, которая возвращает генератор с n числами Фибоначчи.
def fib(n):
a, b = 0, 1
for _ in range(n):
yield a
a, b = b, a + b
В данном примере мы используем цикл for для генерации чисел Фибоначчи и yield для возврата каждого числа в виде генератора. Таким образом, при вызове функции fib с параметром n, мы получим генератор, который может быть использован для итерации по числам Фибоначчи.
Генераторы в Python позволяют эффективно работать с большими последовательностями данных, так как они не требуют выделения памяти под все значения сразу. Вместо этого значения генерируются по требованию, что уменьшает нагрузку на оперативную память и позволяет работать с большими объемами данных.
Использование функции-генератора с ключевым словом yield является удобным и эффективным способом создания генераторов в Python. При работе с большими объемами данных или при необходимости последовательного доступа к элементам последовательности, генераторы могут быть очень полезными инструментами.
Другие уроки курса "Python"
- Обработка ошибок в Python
- Замена атрибута в именованном кортеже
- Оператор is в Python
- Удаление элементов из списка в Python
- Логирование с Loguru
- Расчет времени выполнения
- Хеширование паролей с использованием salt
- Использование функции enumerate()
- Python enumerate() функции
- Создание словаря с значением по умолчанию
- Работа с географическими данными в Python
- Закрытие файла в Python
- Абстракции словарей и множеств в Python
- Работа со словарями
- Импорт с альтернативным именем
- Установка и загрузка Instaloader
- Подписка на каналы разработчиков
- Обработка StopIteration в Python
- Методы shutil для работы с файлами
- Обмен значений переменных в Python
- Анализ текста на русском языке с помощью Pymystem3
- Получение значений из словарей
- Декораторы в Python
- Поиск индекса элемента
- Проверка памяти объекта
- Установка и использование Logzero
- Настройка нарезки списков
- Использование модуля math
- Бинарный поиск
- Создание списка через цикл
- Метод __irshift__ для побитового сдвига вправо
- Передача неизвестных аргументов в Python.
- Работа с OpenCV
- Порядок операций в Python
- Codecademy в Telegram
- Удаление символов новой строки в Python.
- Руководство по использованию Colorama
- Объединение словарей в Python
- Поиск индексов в списке
- Работа со временем в Python
- Преобразование регистра символов
- Метод count в Python: почему count(», ») возвращает 4?
- Конкатенация строковых литералов
- Обязательные аргументы в Python
- Переменные класса и экземпляра
- Базовые объекты Python















