#生成器 不会记录在内存里,而是用快捷方式记录,并且记录上一次的位置,返回下一个值sum(range(1,101))def my_range(first=0, last=10, step=1):number = first-
while number < last: -
yield number number = stepranger = 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_itdef 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
浏览数 (9)


