Понимание генераторов Python
Деверение в мире генераторов Python может быть озадачивающимся, особенно если вы привыкли к экосистеме Java. В отличие от модели потока Java, генераторы в Python служат отличительной цели.
определение и реализация
генератор - это функция, которая использует ключевое слово доходности, чтобы вернуть итератор. При вызове генератор генерирует последовательность значений по одному. Вместо вычисления и хранения всей последовательности в памяти генераторы дают значения по требованию. урожай n Учитывайте n 1
]вызов my_gen (6) Создает объект, который дает значения 6 и 7, когда итерация через:
def my_gen(n): yield n yield n 1
для петли автоматически вызовет для вас, что позволяет легко итерации по последовательности:
g = my_gen(6) next(g) # Output: 6 next(g) # Output: 7
]
Преимущества генераторовfor n in my_gen(6): print(n) # Output: # 6 # 7
Generators предлагают несколько преимуществ:
Succinct Preventation:
. Способ описать определенные концепции, устраняя необходимость в словесных функциях, которые возвращаются Списки. Это особенно полезно при работе с потоками данных, которые в противном случае подали бы память. Например, номера Fibonacci могут быть сгенерированы на неопределенный срок:Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3