Python_day9_昨日回顾.txt 696 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. Python_day9_昨日回顾
  2. 1、函数可以被作为实参出被传递
  3. 2、函数可以作为其他函数的返回值
  4. li = [1]
  5. def foo():pass
  6. <function foo at 0x314314>
  7. 3、内部函数
  8. def outer():
  9. def inner():
  10. pass
  11. inner()
  12. return inner
  13. 4、闭包
  14. def foo(s):
  15. x = 10
  16. def inner():
  17. print(x,s)
  18. return inner
  19. 5、装饰器
  20. def outer(f):
  21. def wrapper(*args, **kwargs):
  22. # 需要添加的功能
  23. r = f(*args, **kwargs)
  24. return r
  25. return wrapper
  26. @outer
  27. def foo():
  28. pass
  29. @outer # 那里需要装饰器就在函数上方调用
  30. def f2(x):
  31. pass
  32. f2() #这个时候f2就是 wrapper 函数了(装饰器里面的内容了)