我对Python还是比较陌生的,所以如果有什么基本的东西我没有,尽管告诉我。在
为了便于调试,我习惯于为我创建的每个对象创建一个show()过程。例如:
class YourMom:
def __init__(self):
self.name = ""
self.age = ""
self.children = []
#End init()
def show(self):
print "Name is '%s'" % (self.name)
print "Age is '%s'" % (self.age)
for i in self.children:
print " Children: '%s'" % (i)
#End show()
#End YourMom class
所以我的问题很简单: 有没有一种编程方式可以不需要每次手动编写show()过程?在
编辑: 这里有一个类似的问题:List attributes of an object 但是我在查找对象属性中的值以及它们的列表。在
是的,它是一个python内置函数^{} 。在
正如wim所说,您可以在任何具有} 。请注意,这将返回与之相关联的每个方法和字段,即使是}。在
__dict__
属性的对象上使用vars
。但是,如果处理的对象不是这样,则可以使用^{__eq__
和{如果您键入:
进入解释器,结果如下:
如果您想做比显示所有内容更复杂的事情,您可能需要查看inspect。在
例如,如果只想显示与任何其他对象不同的对象的属性:
^{pr2}$这将返回:
坦白地说,
a
可以是任何你想要的类型——把它变成一个只接受一个对象并返回一个列表的方法是非常容易的。在相关问题 更多 >
编程相关推荐