__repr__和__str__的区别
__repr__和__str__的区别在于,后者是在str( )函数被使用,或是在用print函数打印一个对象的时候才被调用的,并且它返回的字符串对终端用户更友好。
如果你只想实现这两个特殊方法中的一个,__repr__是更好的选择,因为如果一个对象没有__str__函数,而Python又需要调用它的时候,解释器会用__repr__作为替代。
“Difference between str and repr in Python”是Stack Overflow上的一个问题,Python程序员Alex Martelli和Martijn Pieters的回答很精彩。