44 lines
507 B
Python
44 lines
507 B
Python
|
let t = []
|
||
|
|
||
|
def foo():
|
||
|
let a, b, c = 1,2,3
|
||
|
t.append(lambda: (a,b,c))
|
||
|
yield
|
||
|
a = 'a'
|
||
|
t.append(lambda: (b,c,a))
|
||
|
yield
|
||
|
b = 'b'
|
||
|
t.append(lambda: (c,b,a))
|
||
|
yield
|
||
|
c = 'c'
|
||
|
|
||
|
let g = foo()
|
||
|
print('one')
|
||
|
g()
|
||
|
print(t[0]())
|
||
|
if True:
|
||
|
print('two')
|
||
|
g()
|
||
|
print(t[0]())
|
||
|
print(t[1]())
|
||
|
print('three')
|
||
|
g()
|
||
|
print(t[0]())
|
||
|
print(t[1]())
|
||
|
print(t[2]())
|
||
|
print("exhaust")
|
||
|
g()
|
||
|
|
||
|
del g
|
||
|
|
||
|
import gc
|
||
|
gc.collect()
|
||
|
gc.collect()
|
||
|
gc.collect()
|
||
|
gc.collect()
|
||
|
|
||
|
|
||
|
print(t[0]())
|
||
|
print(t[1]())
|
||
|
print(t[2]())
|