0
我有以下代码编辑列表的列表python3
class Board:
def __init__(self, size=7):
self._size = size
self._list, self._llist =[],[]
for i in range (self._size):
self._list.append('_ ')
for j in range(self._size):
self._llist.append(self._list)
def printboard(self):
for i in range(self._size):
for j in range(self._size):
print(self._llist[i][j], end = ' ')
print('\n')
def updateboard(self,x,y,letter):
self._llist[x][y]=letter
self.printboard()
board = Board(3)
board.updateboard(0,0,'c')
这种打印
c _ _
c _ _
c _ _
,而不是
c _ _
_ _ _
_ _ _
我看不出什么错误。另外,是否有一种更简单的方式来动态创建列表清单?
谢谢!
感谢那些工作。但我不明白为什么当我更改llsit中的一个字段时列表正在改变? – pogo
这里有一个解释 - http://henry.precheur.org/python/copy_list –
你正在做的是制作三个标签都指向相同的列表。我做了三个不同的列表。阅读该页面几次,希望你会明白。注意 - 在该页面上他们做self._list [:]这是做我做的事情的另一种方式(list.self)。此外,停止调用变量“列表”,因为它是混乱! :O) –