我写了这段代码:
class Item:
def __init__(self, name):
self._name = name;
def __str__(self):
return "Item: %s" % self._name
当我跑
print((Item("Car"),))
输出是
(<__main__.Item object at 0x0000000002D32400>,)
当我将代码更改为此:
class Item:
def __init__(self, name):
self._name = name;
def __repr__(self):
return "Item: %s" % self._name
def __str__(self):
return "Item: %s" % self._name
然后它输出
(Item: Car,)
__repr__
所以现在我对和之间的区别感到困惑__str__
。