优先级如何在python中的append函数中起作用

时间:2015-10-24 18:10:55

标签: python

我想知道是否有人可以向我解释以下代码如何导致以下输出。

CODE:

board = []

for o in range(5):

    board.append(["O"]*5)

print board

输出:

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

对我来说,我读“board.append([”O“] * 5)”as: 附加到列表板,列出包含字母“O”的列表,然后执行5次,因此最终不正确:

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

有人可以解释一下这里是否有一些优先事项或为什么不是这种情况,因为我似乎无法理解它?

此致 briarjr

1 个答案:

答案 0 :(得分:0)

创建数组时:

    ["O"]*5 => ["O","O","O","O","O"]

因为你的.append([“O”] * 5)由于你的循环5次,你实际上是附加[“O”,“O”,“O”,“O”,“O” ] 5次。