Курс 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"

  1. Расчет времени выполнения
  2. Использование функции product
  3. Экспорт данных в файл.
  4. Тайное преобразование типа ключа
  5. Перевод двоичного кода в целое число
  6. Преобразование многоуровневого словаря
  7. Обновление и получение данных в SQLite
  8. Работа с путями в Python
  9. Вывод баннеров
  10. Классы данных в Python
  11. Создание словарей в Python
  12. Генерация фальшивых данных с Faker
  13. Разделение функций на этапы
  14. Игра «Угадывание чисел»
  15. Конкатенация строк с join() в Python
  16. Присоединение элементов коллекции
  17. Работа с атрибутом dict
  18. Расширение операции побитового «и» в Python
  19. Копирование объектов в Python
  20. Конкатенация строк с помощью join()
  21. Структурирование именованных констант
  22. Округление в Python
  23. Проблема с изменяемыми аргументами
  24. Оператор zip в Python
  25. Разделение строки с помощью split()
  26. Запуск Python из интерпретатора
  27. Поиск подстроки в строке
  28. Обезопасьте ввод данных
  29. Уникальные значения из списка
  30. Переопределение метода len
  31. Проверка условий: all и any
  32. Возврат нескольких значений из функции
  33. Импорт модулей и пакетов в Python
  34. Работа с модулем bisect
  35. Работа с классами данных
  36. Генератор бросков кубиков
  37. Замена элементов в списке с помощью генераторов списков
  38. Декораторы классов
  39. Переопределение унарных операторов
  40. Многострочные комментарии в Python
  41. Операции с датами в Python
  42. Работа с Colorama
  43. Глобальные переменные в Python
  44. Создание новых функций через partial
  45. Ускорение выполнения кода в Python
  46. Декораторы в Python
  47. Форматирование строк в Python
  48. Комплексные числа в Python

Marketello читают маркетологи из крутых компаний