相同点
两者的目的都是为了展示一些和python 类或者实例相关的信息。
区别
__repr__:展示的是一种较正式的信息,目的是为了向开发者展示debug信息,一般展示的信息较为全面,但是可读性没有__str__好,展示目标是不模糊即可。
__str__: 展示的是非正式的信息,目的是为了向终端用户展示一些信息,展示的信息较__repr__少,但是可读性较好。
扩展
1.当调用repr()与str()方法时,底层调用的正是__repr__和__str__方法。
2.一般建议python自定义类都能够实现自己的__repr__方法
参考文献
1.https://www.geeksforgeeks.org/str-vs-repr-in-python/
2.https://stackoverflow.com/questions/1436703/difference-between-str-and-repr
版权声明:本文为u010442136原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。