#生成器 不会记录在内存里,而是用快捷方式记录,并且记录上一次的位置,返回下一个值
sum(range(1,101))
def my_range(first=0, last=10, step=1):
number = first
-
while number < last:
-
yield number
number = step
ranger = my_range(1,5)
for x in ranger:
#可以对它进行迭代
#装饰器 不改变源码的情况下修改已存在函数。把一个函数作为输入并返回另一个函数。
def document_it(func):
-
def new_function(*args,
**kwargs):
-
print('Running function:', func.__name__)
-
print('Positional arguments:', args)
-
print('Keyword arguments:', kwargs)
result = func(*args,
**kwargs)
-
print('Result:', result)
-
return result
-
return new_function
def add_ints(a, b):
-
return a b
cooler_add_ints = document_it(add_ints)
#人工赋值
cooler_add_ints(3,
5)
#装饰器可以直接写在要被装饰的函数前面,可以有多个,按顺序执行
@document_it
def add_ints(a, b):
-
return a b
add_ints(3,
5)
#命名空间
locals()
返回一个局部命名空间内容的字典
#只能函数内打印
globals()
返回一个全局命名空间内容的字典
#特殊
function.__name__ #函数名称
function.__doc__ #函数文档
__main__ #主程序
Python模块和函数--特殊函数
2021-06-18 18:08:57
浏览数 (1)