Курс 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. Получение комбинаций в Python
  2. Работа со строками в Python
  3. Установка и использование emoji
  4. Генераторные функции в Python
  5. Преобразование списка в словарь через генератор
  6. Создание списков в Python
  7. Присвоение значений переменным в Python
  8. Работа с аргументами командной строки в Python
  9. Асинхронное выполнение задач в Python
  10. Функция enumerate в Python
  11. Переопределение метода __eq__
  12. Псевдонимы в Python
  13. Метод Self в Python
  14. Подсчет количества элементов в списке
  15. Отладчик pdb: начало работы
  16. Работа с модулем Calendar
  17. Использование type hints
  18. Тест скорости набора текста на Python
  19. Значения по умолчанию в Python
  20. Установка виртуального окружения Python
  21. Приоритет операций в Python
  22. Использование функции product
  23. Разбиение строки в Python
  24. globals и locals
  25. Python enumerate() функции
  26. Генерация резюме в Gensim
  27. Модуль future Python
  28. Модуль xkcd: загрузка комиксов
  29. Объединение Python и Shell
  30. Метод округления чисел
  31. Контроль точности вывода чисел
  32. Мониторинг работы программы Py-spy
  33. Оператор is в Python
  34. Работа с атрибутом dict
  35. Декораторы в Python
  36. Создание копии списка в Python
  37. Расчет времени выполнения программы
  38. Профилирование с cProfile
  39. Сложение матриц в NumPy
  40. Метод __call__ в Python
  41. Операции с кортежами
  42. Расчет времени выполнения
  43. Любовь к Python
  44. Извлечение аудио из видео
  45. Функция product() в Python
  46. Принцип одной функции
  47. Экспорт данных с помощью writefile
  48. Импорт модулей и пакетов в Python

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