Python h5py文件上下文管理器是否自动关闭文件?

Python h5py文件上下文管理器是否自动关闭文件?,python,h5py,contextmanager,Python,H5py,Contextmanager,我使用f=h5py.File(filename,'r')已经有一段时间了,它需要在末尾使用f.close()关闭 最近我发现我可以做到: with h5py.File(filename, 'r') as f: # code to manipulate the file 但是我不确定:这个“上下文管理器”(正如他们所说)是否会自动关闭文件,或者我是否仍必须在末尾添加f.close() 我试图在中找到答案,但在《快速入门指南》中,上下文管理器只在一行中提到过,显然没有关于它的更多信息。答

我使用
f=h5py.File(filename,'r')
已经有一段时间了,它需要在末尾使用
f.close()
关闭

最近我发现我可以做到:

with h5py.File(filename, 'r') as f:
     # code to manipulate the file
但是我不确定:这个“上下文管理器”(正如他们所说)是否会自动关闭文件,或者我是否仍必须在末尾添加
f.close()


我试图在中找到答案,但在《快速入门指南》中,上下文管理器只在一行中提到过,显然没有关于它的更多信息。

答案是:是的,上下文管理器会自动关闭文件。

h5py.file.\uuuuu exit\uuuuuuu()
只执行一个受保护的调用,如果没有,这是一个有待制作的bug报告。好吧,我想是的。我也这么认为,但不确定,也没有在h5py文件中找到进一步的细节。同时,它记录在这里:这里: