__dict__属性是一个字典(dict),它包含了该对象所有的属性。
下面用pytorch中的torchvision.models作比喻:
[input]:import torchvision.models as models
[input]:models.__dict__
[output]:
{
'__name__': 'torchvision.models',
'__doc__': None,
'__package__': 'torchvision.models',
...
...
...
'DenseNet': torchvision.models.densenet.DenseNet,
'densenet121': <function torchvision.models.densenet.densenet121(pretrained=False, **kwargs)>,
'densenet169': <function torchvision.models.densenet.densenet169(pretrained=False, **kwargs)>,
'densenet201': <function torchvision.models.densenet.densenet201(pretrained=False, **kwargs)>,
'densenet161': <function torchvision.models.densenet.densenet161(pretrained=False, **kwargs)>
}
可以用这种方法来访问对象的属性:
[input]:densenet = models.__dict__['DenseNet']
[input]:densenet
[output]: torchvision.models.densenet.DenseNet
有一点要注意:
python 中的所有东西都是对象,这里说的所有指的是函数,类,对象,变量,等等
参考:https://stackoverflow.com/questions/19907442/python-explain-dict-attribute

本文详细介绍了Python中__dict__属性的功能和使用方法,通过PyTorch的torchvision.models模块实例,展示了如何利用__dict__访问和操作对象属性,强调了Python中一切皆为对象的理念。
8864

被折叠的 条评论
为什么被折叠?



