打印数据结构

时间:2011-12-15 22:15:17

标签: python

我正在编写一个数独求解器,作为其中的一部分,我正在创建一个代表数独板的类。该类的部分功能是打印自身的能力。现在我有一个方法PrintBoard作为我班级的一部分。所以我会这样用它:

myBoard.PrintBoard()

但我在想;有没有办法覆盖python的打印,以便:

print(myBoard)

运行PrintBoard方法吗?

2 个答案:

答案 0 :(得分:8)

是。看看__str__方法。

您也可以使用__repr__方法,但正如文档中所述:

  

如果可能的话,这应该看起来像一个有效的Python表达式,可用于重新创建具有相同值的对象(给定适当的环境)。

根据您的描述,这听起来不像您的打印目标。

答案 1 :(得分:2)

您可以为您的班级实施__repr____str__操作