我正在使用bug_html_file
方法打开文件.read()
。 Python在内存中将它用作{str}
对象,对吗?
bug_html_file = open(bgz_sfx_html_file, 'r', encoding='utf-8').read()
是否需要以任何方式关闭该句柄?是否创建了文件句柄?
答案 0 :(得分:2)
您应该始终关闭您打开的文件。例如,如果您在解释器中运行该程序,然后您在解释程序仍处于打开状态时尝试删除该文件,则您将无法执行此操作,因为该文件已被标记为"正在使用& #34 ;.
您打开该文件的方式,您将丢失文件对象的引用(由open
返回),因此您无法在之后将其关闭。
正如@Chris_Rands建议的那样,使用with
块来确保一旦退出块就关闭文件:
with open('bug_html_file.txt', 'r') as fp:
data = fp.read()
# here the file is closed (if you try `read`ing from `fp` you'll raise an error)