locals()语句
try:f = open('My_File.txt') # 当前文件夹中并不存在"My_File.txt"这个文件T_T
print(f.read())
except OSError as reason:
print('出错啦:' + str(reason))
finally:
if 'f' in locals():
f.close()
请大神解释下locals()语句在代码在起到什么样的作用呢? locals代表本次运行环境中所有的变量。
如果'f' 在 locals() 里面,则代表变量f被定义了。
因为如果在open函数那里,文件不存在的话,f是不会被定义的。 locals()用来返回当前的局部变量,如果“f”在这个变量字典中,就关闭文件,不过,没有这个文件,就没有打开,也就不需要关闭呀,这个您写的有点矛盾!
页:
[1]