前言

在Pyhton 中,如果想定制化打印出实例对象的信息,那可以使用__str____repr__魔法方法来定制化显示。

__str____repr__

在Python中,打印一个自定义类的实例对象所显示的信息往往是很不友好的,如下所示:

__str____repr__ 所起的作用就是定制化显示输出信息(你想输出什么就是什么),当然,两者也有区别的,区别如下:

对于printstr内置函数,程序会首先尝试__str__,如果没有__str__,则尝试__repr__,如果没有__repr__,则选用默认显示。在交互式回应,repr函数中__repr__会被调用,你可以这么认为,__str__ 是给用户看的,__repr__则是给开发者看的. 看下面示例:

从上面示例可以看出 print 和 str函数中调用的是 __str__, 而在交互式响应中 和 repr函数中调用的是__repr__。


本文分享自微信公众号 - 软件测试架构师俱乐部(gh_03227f9a322f)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

09-05 01:58