基于属性名称打印类的属性

时间:2016-08-19 23:27:09

标签: python

有没有办法打印出python对象的所有属性及其值

例如,对于以下类和对象

class man:
    def __init__(self):
      name = "jim"
      age = 2

him = man()

我想打印出对象“他”的所有属性以及它们的值。我想要一些类似于以下

的代码
for variable_name of him:
    print variable_name," : ",him.variable_name

应该打印出来

name : jim
age : 2

有没有办法在python中做到这一点?

1 个答案:

答案 0 :(得分:1)

首先,您需要在对象中正确定义字段:

class man(objet):
    def __init__(self):
        self.name = "jim"
        self.age = 2

然后您可以使用object.__dict__

>>> him = man()
>>> himp.__dict__
{'name': 'jim', 'age': 2}