python通过字符串获取对象的属性

使用背景

有时候需要通过配置文件的字符串来获取某个对象的属性。 举个例子,假设在配置文件中可以指定数据集名称dataset_name='CocoCaptions',需要使用torchvision提供的数据集,但是其提供的数据集很多,如:'LSUN', 'LSUNClass', 'FakeData','CocoCaptions', 'CocoDetection'等,如何或者dataset_name对应的数据集对象呢?

1. 实现方法:

方法一:通过属性字典__dict__

torchvision.datasets.__dict__(dataset_name)

方法二:通过getattr函数

getattr(torchvision.datasets, dataset_name)

易往,特此记录。

原文地址:https://www.cnblogs.com/geoffreyone/p/12553970.html