Show how to return values to python generator
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
:PROPERTIES:
|
||||
:ID: 67410dad-d959-4029-b281-9bf1c9e69ede
|
||||
:mtime: 20220529131239
|
||||
:mtime: 20220729213822
|
||||
:ctime: 20220529123824
|
||||
:END:
|
||||
#+title: Generator
|
||||
@@ -94,5 +94,45 @@ print(f'{sum(square(fibonacci_numbers(30))) = }')
|
||||
#+RESULTS:
|
||||
: sum(square(fibonacci_numbers(30))) = 1120149658760
|
||||
|
||||
* Renvoyer une valeur à un /generator/
|
||||
#+BEGIN_SRC python :results output
|
||||
def dummy_generator():
|
||||
i = 0
|
||||
for i in range(10):
|
||||
print(f'from generator {yield i}')
|
||||
|
||||
generator = dummy_generator()
|
||||
received = generator.send(None)
|
||||
print(f'from here {received}')
|
||||
try:
|
||||
while True:
|
||||
received = generator.send(received + 100)
|
||||
print(f'from here {received}')
|
||||
except StopIteration:
|
||||
pass
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS:
|
||||
: from here 0
|
||||
: from generator 100
|
||||
: from here 1
|
||||
: from generator 101
|
||||
: from here 2
|
||||
: from generator 102
|
||||
: from here 3
|
||||
: from generator 103
|
||||
: from here 4
|
||||
: from generator 104
|
||||
: from here 5
|
||||
: from generator 105
|
||||
: from here 6
|
||||
: from generator 106
|
||||
: from here 7
|
||||
: from generator 107
|
||||
: from here 8
|
||||
: from generator 108
|
||||
: from here 9
|
||||
: from generator 109
|
||||
|
||||
* Références
|
||||
* [[https://blog.devgenius.io/what-is-generator-in-python-and-how-does-it-work-e6e0588785c3][What Is Generator in Python and How Does It Work ? - Medium]]
|
||||
|
Reference in New Issue
Block a user