使用 netCDF4 中的参数分配全局属性名称
Assigning global attribute name using a parameter in netCDF4
在不久的将来,我会经常需要将一些数据转换成netcdf格式。我有一长串需要分配给数据集的全局属性。例如,要将全局属性 title
分配给数据集 ds
,我可以这样做
ds.title = 'my_title'
但是,我希望我的代码可以重用,并且我的全局属性列表会因数据集而异。因此,我希望能够使用变量提供全局属性的名称(上例中的 title
),例如
var = title
ds.var = 'my_title'
但是,上面的示例会创建一个名为 'var' 的全局属性,这不是我想要的。有可能做这样的事情吗?
更具体地说,我将创建一个字典,其中键是全局属性名称,项目是要存储的内容。
非常感谢您的帮助。
你想要的是setattr
根据字符串设置属性:
my_attrs = dict(title='my_title', author='me')
for name, value in my_attrs.items():
setattr(ds, name, value)
在不久的将来,我会经常需要将一些数据转换成netcdf格式。我有一长串需要分配给数据集的全局属性。例如,要将全局属性 title
分配给数据集 ds
,我可以这样做
ds.title = 'my_title'
但是,我希望我的代码可以重用,并且我的全局属性列表会因数据集而异。因此,我希望能够使用变量提供全局属性的名称(上例中的 title
),例如
var = title
ds.var = 'my_title'
但是,上面的示例会创建一个名为 'var' 的全局属性,这不是我想要的。有可能做这样的事情吗?
更具体地说,我将创建一个字典,其中键是全局属性名称,项目是要存储的内容。
非常感谢您的帮助。
你想要的是setattr
根据字符串设置属性:
my_attrs = dict(title='my_title', author='me')
for name, value in my_attrs.items():
setattr(ds, name, value)