如何使用python在netcdf文件中查找所有2D或更高版本的变量?

如何使用python在netcdf文件中查找所有2D或更高版本的变量?,python,netcdf,Python,Netcdf,我想在netcdf文件中找到所有具有两个或更多维度的变量。换句话说,获取所有非0维或1维变量的列表 看来我应该可以做一些类似的事情: 导入netCDF4 nc=netCDF4.Dataset(文件) varlist=[k,v在nc.variables.iteritems()中] where使用了v.ndim>1,但我想不出来。你提供的列表理解力就快到了。布尔条件在结尾,而不是开始 [(nm, var) for nm, var in nc.variables.iteritems() if va

我想在netcdf文件中找到所有具有两个或更多维度的变量。换句话说,获取所有非0维或1维变量的列表

看来我应该可以做一些类似的事情:


导入netCDF4
nc=netCDF4.Dataset(文件)
varlist=[k,v在nc.variables.iteritems()中]


where使用了
v.ndim>1
,但我想不出来。

你提供的列表理解力就快到了。布尔条件在结尾,而不是开始

[(nm, var) for nm, var in nc.variables.iteritems() if var.ndim > 1]
输出长度为2元组的列表,每个元组包含名称和netCDF4变量对象。如果您只需要变量,您可以这样做

[var for var in nc.variables.itervalues() if var.ndim > 1]
列表理解是一个非常强大的工具;请参见此处的官方文档: