对2D列表使用Python _repr__;()
有没有办法让对2D列表使用Python _repr__;(),python,oop,multidimensional-array,Python,Oop,Multidimensional Array,有没有办法让\uuuu repr\uuuu()返回一个2d列表,以便在Python中逐行打印 我的尝试如下。我看不出如何插入新行,如打印(“…”,end=“\n”) 你真的不应该用\uuu repr\uuuu()来做这个用途——也许我们把它叫做.format() 无论采用哪种方式,您都希望从没有分隔符的字符中生成行('.join(…)),然后使用'\n'将这些行连接起来: def格式(自): 返回'\n'.join(['''.join(str(c)表示行中的c)表示行中的self.board])
\uuuu repr\uuuu()
返回一个2d列表,以便在Python中逐行打印
我的尝试如下。我看不出如何插入新行
,如打印(“…”,end=“\n”)
你真的不应该用
\uuu repr\uuuu()
来做这个用途——也许我们把它叫做.format()
无论采用哪种方式,您都希望从没有分隔符的字符中生成行('.join(…)
),然后使用'\n'
将这些行连接起来:
def格式(自):
返回'\n'.join(['''.join(str(c)表示行中的c)表示行中的self.board])
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuformat
可能意味着它与str
类型支持的format
方法相关。当然<代码>\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/code>可以工作,但是\\\\\\\\\\\\\\\\\\\\\\\\\\/code>觉得这样做不对。
class Board:
def __init__(self, rows = 6, cols=7, fill=0):
self.rows = rows
self.cold = cols
self.symbol = fill
self.board = [[fill] * cols for row in range(rows)]
def __repr__(self):
return str([self.board[i] for i in range(len(self.board))])
board = Board()
print(board)