“如何确保在Python中关闭文件”的标准答案是将命令包装在“with”语句中,以便在退出“with”块时调用析构函数。你知道吗
但是如果您不能这样做,因为文件句柄需要在大量代码中保持打开状态,那该怎么办呢?例如,在对象构造函数中打开文件句柄,将其保存到对象属性,然后在许多对象方法中引用文件句柄。你知道吗
可以将文件句柄的打开位置移动到方法本身,但基本上在这种情况下,每次调用方法时我都会打开/关闭文件,这样效率要低得多。你知道吗
我试过在object析构函数中放置一个“close”命令(“del”方法),但这不起作用。你知道吗
Tags:
一个肮脏但简单的胜利是在打开文件名时记录文件名,并确保
file.close(...)
出现在末尾。保留一个列表或包装open()
函数(由this post建议)可以完成这项工作。你知道吗Postcheck what files are open in Python 建议了几种解决方案,如包装内置的文件对象、命令行方法和模块
psutil
,等等,也许其中一些适合您的情况。你知道吗相关问题 更多 >
编程相关推荐