现在我的项目中有以下代码:
if keyword in sample_namespace:
return sample_namespace[keyword]
else:
return None
命名空间是从插件内容动态构建的。
如果它是字典而不是命名空间,我可以简单地执行 sample_dict.get(keyword) 来获得相同的功能。有没有办法在实现相同整洁的同时使用名称空间来做到这一点?
现在我的项目中有以下代码:
if keyword in sample_namespace:
return sample_namespace[keyword]
else:
return None
命名空间是从插件内容动态构建的。
如果它是字典而不是命名空间,我可以简单地执行 sample_dict.get(keyword) 来获得相同的功能。有没有办法在实现相同整洁的同时使用名称空间来做到这一点?
我想你正在寻找getattr
:
return getattr(sample_namespace,keyword,None)
或者,如果您使用 term namespace
,vars(namespace)
将返回一个表示命名空间的字典。