需要了解list append()方法如何与多维列表一起工作



如果我想在python中创建一个多维列表(例如5x5列表),这是正确的代码(O只是一个示例占位符):

2dlist = []
for x in range(0,5):
2dlist.append(['O'] * 5)

然而,这里的['O'] * 5究竟是什么意思?因为,看这里,我假设列表在循环的第一次迭代中是这样的:

[['O'], ['O'], ['O'], ['O'], ['O']]

实际上,在循环的第一次迭代中,列表是这样的(这是正确的):

[['O', 'O', 'O', 'O', 'O']]

为什么?

list乘以int将使列表的内容乘以所述int。例如:

a = [1,2] * 3
print(a)
>>> [1,2,1,2,1,2]

这就是为什么在您的示例中,当您将['O'] * 5附加到列表时,您将['O', 'O', 'O', 'O', 'O']附加到2dlist

相关内容

  • 没有找到相关文章

最新更新