更改对象在解释器中的显示方式

eli*_*eac 2 python interpreter

有没有办法改变对象在Python解释器中显示时的显示方式?例如:

>>> test = myobject(2)
>>> test
'I am 2'
Run Code Online (Sandbox Code Playgroud)

要么

>>> test = myobject(2)
>>> test
myobject(2)
Run Code Online (Sandbox Code Playgroud)

Gre*_*ill 6

是的,您可以提供特殊__repr__方法的定义:

class Test:
    def __repr__(self):
        return "I am a Test"

>>> a = Test()
>>> a
I am a Test
Run Code Online (Sandbox Code Playgroud)

当然,在一个真实的例子中,您将从对象数据成员中打印出一些值.

__repr__方法在此处的Python文档中进行了描述.