python 创建具有属性的 netCDF
python create netCDF with attributes
我有一个 XML 文件,我想将其作为 netCDF 文件的基础。我可以在 python.
中读取 XML 文件并创建 netCDF 文件
XML 文件中的每个组或变量都有属性,我想将它们添加到 netCDF 文件中。我的问题是我不知道属性的名称,这整个事情需要自动进行。
在 python 中为 netCDF 创建和添加属性的常用方法如下:
grp.attr = 'name'
我现在需要自动执行此操作,我不知道 'attr' 到底是什么。如果我使用 'attr' 作为变量名,'attr' 将被添加到 netCDF 文件中,而不是实际名称。
我将尝试说明这一点。假设我的组有三个属性:
<attribute name="alphabet" value="abc"/>
<attribute name="number" value="42"/>
<attribute name="version" value="ncc1701"/>
我希望这些属性在文件中,但在撰写本文时我不知道哪个属性在哪里,它的名称是什么等等。所以我遍历所有属性并编写类似于此的代码:
for att in list_attributes:
attr_name = att.name
attr_value = att.value
grp.attr_name = attr_value
如果我这样做,我最终会在我的 netCDF 文件中得到 one 属性,其名称为 'attr_name' 且值为 'ncc1701' 而不是预期的三个属性。
有什么解决办法吗?谢谢
在循环中使用来自 netCDF4 包的 setncattr
方法。
我有一个 XML 文件,我想将其作为 netCDF 文件的基础。我可以在 python.
中读取 XML 文件并创建 netCDF 文件XML 文件中的每个组或变量都有属性,我想将它们添加到 netCDF 文件中。我的问题是我不知道属性的名称,这整个事情需要自动进行。
在 python 中为 netCDF 创建和添加属性的常用方法如下:
grp.attr = 'name'
我现在需要自动执行此操作,我不知道 'attr' 到底是什么。如果我使用 'attr' 作为变量名,'attr' 将被添加到 netCDF 文件中,而不是实际名称。
我将尝试说明这一点。假设我的组有三个属性:
<attribute name="alphabet" value="abc"/>
<attribute name="number" value="42"/>
<attribute name="version" value="ncc1701"/>
我希望这些属性在文件中,但在撰写本文时我不知道哪个属性在哪里,它的名称是什么等等。所以我遍历所有属性并编写类似于此的代码:
for att in list_attributes:
attr_name = att.name
attr_value = att.value
grp.attr_name = attr_value
如果我这样做,我最终会在我的 netCDF 文件中得到 one 属性,其名称为 'attr_name' 且值为 'ncc1701' 而不是预期的三个属性。
有什么解决办法吗?谢谢
在循环中使用来自 netCDF4 包的 setncattr
方法。