Python模块和函数--特殊函数

2021-06-18 18:08:57 浏览数 (1)

  1. #生成器 不会记录在内存里,而是用快捷方式记录,并且记录上一次的位置,返回下一个值
  2. sum(range(1,101))
  3. def my_range(first=0, last=10, step=1):
  4.     number = first
  5. while number < last:
  6. yield number
  7.         number = step
  8. ranger = my_range(1,5)
  9. for x in ranger: #可以对它进行迭代
  10. #装饰器 不改变源码的情况下修改已存在函数。把一个函数作为输入并返回另一个函数。
  11. def document_it(func):
  12. def new_function(*args, **kwargs):
  13. print('Running function:', func.__name__)
  14. print('Positional arguments:', args)
  15. print('Keyword arguments:', kwargs)
  16.         result = func(*args, **kwargs)
  17. print('Result:', result)
  18. return result
  19. return new_function
  20. def add_ints(a, b):
  21. return a b
  22. cooler_add_ints = document_it(add_ints) #人工赋值
  23. cooler_add_ints(3, 5)
  24. #装饰器可以直接写在要被装饰的函数前面,可以有多个,按顺序执行
  25. @document_it
  26. def add_ints(a, b):
  27. return a b
  28. add_ints(3, 5)
  29. #命名空间
  30. locals() 返回一个局部命名空间内容的字典 #只能函数内打印
  31. globals() 返回一个全局命名空间内容的字典
  32. #特殊
  33. function.__name__ #函数名称
  34. function.__doc__  #函数文档
  35. __main__ #主程序

0 人点赞