好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

如何更改Python类的字符串表示形式?

参见英文答案 > How to print instances of a class using print()?                                    10个 在Java中,我可以覆盖我的类的toString()方法.然后Java的print函数打印由toString()定义的对象的字符串表示.是否有一个Python等同于Java的toString()?

例如,我有一个PlayCard课程.我有一个PlayCard的实例c.现在:

>>> print(c)
<__main__.Card object at 0x01FD5D30>

但我想要的是:

>>> print(c)
A♣

如何自定义类实例的字符串表示形式?

我正在使用Python 3.x.

与Java的toString最接近的是为您的类实现__str__.把它放在你的类定义中:

def __str__(self):
     return "foo"

您可能还想实现__repr__来帮助调试.

浏览此处获取更多信息:

> Special Method Names – Basic Customization

查看更多关于如何更改Python类的字符串表示形式?的详细内容...

  阅读:20次