Python類中的__dict__屬性
阿新 • • 發佈:2019-01-13
__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