参考资料:《Python学习手册》第五版下册
对Person类进行实例化后,调用print函数打印实例化对象,输出如下:
bob = Person('Bob BB') sue = Person('Sue SS', job='worker', pay=1000) print(bob) print(sue)
输出结果: <__main__.Person object at 0x0000022D0F9A9CF8> <__main__.Person object at 0x0000022D0F9A9D30>
在类中重写__repr__方法,可以改变输出信息
def __repr__(self): return "[Person object,name:{}\tpay:{}]".format(self.name, self.pay)
bob = Person('Bob BB') sue = Person('Sue SS', job='worker', pay=1000) print(bob) print(sue) 输出结果: [Person object,name:Bob BB pay:0] [Person object,name:Sue SS pay:1000]
备注:__repr__和__str__的作用是类似的,都是改变输出信息,若类中2个方法都定义了,则print语句默认调用__str__方法进行输出打印。