理解__str__ 和 __repr__

  • Post author:
  • Post category:其他



相同点

两者的目的都是为了展示一些和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 版权协议,转载请附上原文出处链接和本声明。