- 博客(1)
- 资源 (2)
- 收藏
- 关注
原创 try yield finally后的程序何时执行?
def func(): try: yield finally: xxx a=func() a.next() yyy a为一个生成器,在调用next()方法后,会运行到yield, 然后继续运行next()后面的代码yyy。什么时候才会运行finally里的代码呢?经过测试,当无变量指向生成器时,会执行finally后的代码,如: 1.程序运行完成 2.指向生成器的变量a为方法内的局部变量,该方法已执行完成,a被释放 2.del a 3. a指向其他对象,如a=2,生成器没有变量指向 ...
2021-07-26 14:08:09 926
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人