26 lines
710 B
Python
26 lines
710 B
Python
def corrotina():
|
|
print('\t(corrotina) inciciando...')
|
|
x = yield
|
|
print('\t(corrotina) recebeu x: %r' % x)
|
|
y = yield
|
|
print('\t(corrotina) recebeu y: %r' % y)
|
|
print('\t(corrotina) terminando.')
|
|
|
|
|
|
def principal():
|
|
print('(principal) iniciando...')
|
|
co = corrotina()
|
|
print('(principal) invocando next(co)...')
|
|
next(co)
|
|
print('(principal) invocando co.send(88)...')
|
|
co.send(88)
|
|
try:
|
|
print('(principal) invocando co.send(99)...')
|
|
co.send(99)
|
|
# o print a seguir nunca vai acontecer
|
|
print('(principal) invocado co.send(99)')
|
|
except StopIteration:
|
|
print('(principal) a corotina nao tem mais valores a produzir')
|
|
|
|
principal()
|