小编Sco*_*ott的帖子

如何确保在python中关闭netcdf文件?

这可能很简单,但我一直无法在线找到解决方案......我正在尝试使用一系列存储为 netcdf 文件的数据集。我打开每个文件,读入一些关键点,然后转到下一个文件。我发现我经常遇到 mmap 错误/脚本随着读取更多文件而变慢。我相信这可能是因为 netcdf 文件没有被 .close() 命令正确关闭。

我一直在测试这个:

from scipy.io.netcdf import netcdf_file as ncfile
f=ncfile(netcdf_file,mode='r')
f.close()
Run Code Online (Sandbox Code Playgroud)

那么如果我尝试

>>>f
<scipy.io.netcdf.netcdf_file object at 0x24d29e10>
Run Code Online (Sandbox Code Playgroud)

>>>f.variables['temperature'][:]
array([ 1234.68034431,  1387.43136567,  1528.35794546, ...,  3393.91061952,
    3378.2844357 ,  3433.06715226])
Run Code Online (Sandbox Code Playgroud)

所以看起来文件仍然打开?close() 实际上是做什么的?我怎么知道它起作用了?有没有办法从python关闭/清除所有打开的文件?

软件:Python 2.7.6、scipy 0.13.2、netcdf 4.0.1

python netcdf

5
推荐指数
1
解决办法
3836
查看次数

标签 统计

netcdf ×1

python ×1