我得到了一个涉及面向对象编程的任务。类中的两个小函数要求能够以两种不同的方式显示对象的属性
>>> r1
Rectangle(Point(0,0),Point(1,1),'blue')
和
>>> print(r1)
I am a blue rectangle with bottom left corner at (2, 3) and top right corner at (2, 3).
这是我为两者编写的代码,但由于某种原因它只返回了sentece而不是其他:
def __repr__(self):
return 'I am a '+str(self.color)+' rectangle with bottom left corner at '+str(self.p1.get())+' and top right corner at '+str(self.p2.get())+'.'
def __str_(self):
return 'Rectangle('+str(self.p1)+','+str(self.p2)+','+str(self.color)+')'
但是当我测试它时,显示结果:
>>> r1
I am a red rectangle with bottom left corner at (0, 0) and top right corner at (1, 1).
>>> print(r1)
I am a red rectangle with bottom left corner at (0, 0) and top right corner at (1, 1).
我在这里做错了什么?
答案 0 :(得分:0)
_
您错过__str_
__str__