如何更改Python类的字符串表示形式?
在Java中,我可以覆盖toString()
类的方法。然后,Java的print函数将打印由其定义的对象的字符串表示形式toString()
。是否有与Java等效的Python
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__
以帮助调试。浏览此处获取更多信息: