python3中的类默认是新式类(继承object类)。
__repr__()是 Python 类中的一个特殊方法,由于 object 类己提供了该方法, 而所有 的 Python 类都是 object 类 的子类, 因此所有的 Python 对象都具有__repr__方法
重写__repr__前:
class Item: def __init__(self, name, price): self.name = name self.price = price im =Item('鼠标',29.8) print(im) print(im.__repr__()) 输出结果: <__main__.Item object at 0x00000200B16B8E48> <__main__.Item object at 0x00000200B16B8E48>
重写__repr__后:
class Item: def __init__(self, name, price): self.name = name self.price = price def __repr__(self): return "Item[name=" + self.name +",price=" + str(self.price) im =Item('鼠标',29.8) print(im) print(im.__repr__()) # 输出结果: Item[name=鼠标,price=29.8 Item[name=鼠标,price=29.8