标签: python
我正在编写一个数独求解器,作为其中的一部分,我正在创建一个代表数独板的类。该类的部分功能是打印自身的能力。现在我有一个方法PrintBoard作为我班级的一部分。所以我会这样用它:
myBoard.PrintBoard()
但我在想;有没有办法覆盖python的打印,以便:
print(myBoard)
运行PrintBoard方法吗?
答案 0 :(得分:8)
是。看看__str__方法。
__str__
您也可以使用__repr__方法,但正如文档中所述:
__repr__
如果可能的话,这应该看起来像一个有效的Python表达式,可用于重新创建具有相同值的对象(给定适当的环境)。
根据您的描述,这听起来不像您的打印目标。
答案 1 :(得分:2)
您可以为您的班级实施__repr__或__str__操作