问题描述
在不久的将来,我经常需要将一些数据转换为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)