@author jackzhenguo
@desc
@date 2019/2/20
21 nonlocal用于内嵌函数中
关键词nonlocal
常用于函数嵌套中,声明变量i
为非局部变量;
如果不声明,i+=1
表明i
为函数wrapper
内的局部变量,因为在i+=1
引用(reference)时,i未被声明,所以会报unreferenced variable
的错误。
def excepter(f):
i = 0
t1 = time.time()
def wrapper():
try:
f()
except Exception as e:
nonlocal i
i += 1
print(f'{e.args[0]}: {i}')
t2 = time.time()
if i == n:
print(f'spending time:{round(t2-t1,2)}')
return wrapper
大家在看
AI安装教程
AI本地安装教程
微软AI大模型通识教程
微软AI大模型通识教程
AI大模型入门教程
AI大模型入门教程
Python入门教程
Python入门教程
Python进阶教程
Python进阶教程
Python小例子200道练习题
Python小例子200道练习题
Python练手项目
Python练手项目
Python从零在线练习题
Python从零到一60题