_closure.py 268 B

12345678910111213141516171819
  1. # only one level nested closure is implemented
  2. def f0(a, b):
  3. def f1():
  4. return a + b
  5. return f1
  6. a = f0(1, 2)
  7. assert a() == 3
  8. def f0(a, b):
  9. def f1():
  10. a = 5 # use this first
  11. return a + b
  12. return f1
  13. a = f0(1, 2)
  14. assert a() == 7