2016-11-04 60 views
0

假设我有一个自定义类:如何打印包括自定义类对象的列表

class A: 
    def __init__(self, x, y): 
     self.x = x 
     self.y = y 

    def __str__(self): 
     return self.x + ',' + self.y 

我能得到预期的输出“X,Y”通过这样的:

sample = A('x', 'y') 
print(sample) 

但如果我把样品中的列表:

l = [sample] 
print(l) 

我得到这个:

[<__main__.A object at 0x7ff8ae170470>] 

如何获得预期的输出?

+1

对象是使用'__repr__'显示,而不是'__str__'。 – jonrsharpe

回答

-1

打印 '[%s]的' % ''。加入(图(STR,1))在列表中

+0

首先,适当地设置你的代码样本的格式。其次,提供一些解释,而不仅仅是裸露的代码。另外,根据标签来判断,问题是关于Python 3的,所以你的打印方式将不起作用。请注意那 – Leva7

+0

这不是一个人们必须忍受你的决定的地方吗?我测试代码和这项工作,为什么你不要投票回答你不能提交的答案,但是其他人会这么做。 –