我无法在函数returns python中获得list的正确值
我有一个函数get_board,可以用递增的数字填充2d列表我无法在函数returns python中获得list的正确值,python,Python,我有一个函数get_board,可以用递增的数字填充2d列表 size= int (input("Size")) def get_board(size): i=0 num=0 board = [[0] * size] * size for i in range(size): j=0 for j in range(size): board[i][j]=num num+=1 return board board
size= int (input("Size"))
def get_board(size):
i=0
num=0
board = [[0] * size] * size
for i in range(size):
j=0
for j in range(size):
board[i][j]=num
num+=1
return board
board= get_board(size)
print (board[0][0])
我无法得到正确的值。如果大小为3,则电路板从6 7 8开始。示例板[0][0]等于6。
我不明白。你可以简单地用numpy来做这个:numpy.arangesize**2.reformesize,size 不能通过分配给索引来创建列表元素。您必须使用board.append。该代码会引发名称错误。我们可以看到您的真实代码吗?是否有其他代码初始化board变量?我猜您有board=[[0]*size]*size这样的代码,使所有行引用相同的列表。谢谢@Barmar先生,非常有用。非常感谢。