Некоторым генераторам нужно возвращать все элементы другого генератора:
Однако предпочтительнее использовать
📲 Мы в MAX
👉@BookPython
>>> def enclose(gen, before='{', after='}'):
... yield before
... for x in gen:
... yield x
... yield after
...
>>> list(enclose(range(5)))
['{', 0, 1, 2, 3, 4, '}']
Однако предпочтительнее использовать
yield from:
>>> def enclose(gen, before='{', after='}'):
... yield before
... yield from gen
... yield after
yield from не только работает быстрее, но и автоматически обрабатывает передачу значений во вложенные генераторы, возврат значений из генераторов и даже выброс исключений внутри вложенного генератора.👉@BookPython
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1