Python os.walk netCDF4 无法协同工作

Python os.walk netCDF4 not working together

我正在尝试通过一系列 .nc 文件来 运行 一小段代码。下面的测试脚本打印目录中的第一个文件名但是当我使用 ncfile = netCDF4.Dataset(fname, 'r') 我得到错误

File "netCDF4\_netCDF4.pyx", 
line 1795, in netCDF4._netCDF4.Dataset.__init__ 
(netCDF4\_netCDF4.c:12278)
    RuntimeError: No such file or directory

这是 os.walk 和 netCDF4 的不兼容问题还是我犯的一个简单错误?

import os
import netCDF4

for root, dirs, files in os.walk('E:\satellite .nc data\ENVISAT2006'):
   for fname in files:
       print fname # works up to here and without line below it prints all filenames 
       ncfile = netCDF4.Dataset(fname, 'r')

看来是需要路径和目录的简单问题

ncfile = netCDF4.Dataset(fname, 'r')

所以我将其替换为

ncfile = netCDF4.Dataset(os.path.join(fdir,fname), 'r')

并在循环外指定 fdir。为简单起见,我将 os.walk 替换为 os.listdir,因为我不需要遍历目录树。

import os
import netCDF4
import numpy as np
from math import pi
from numpy import cos, sin

fdir = 'E:\satellite .nc data\ENVISAT2006'
for fname in os.listdir('E:\satellite .nc data\ENVISAT2006'):
#os.walk only needed if going through all of the files in a directory tree
   #for fname in files:
    print fname 
    ncfile = netCDF4.Dataset(os.path.join(fdir,fname), 'r')