包含数字的列表

Dvb*_*b12 2 python list

我正在尝试编写一个循环来检查列表中列表中的某个数字是否未出现。例如:如果我有列表

[[1,'O', 3], [4, 5, 6], [7, 8, 'X']]
Run Code Online (Sandbox Code Playgroud)

我想编写一个循环来检查数字是否2出现在其中一个列表中,如果没有,则要求您选择一个新数字。到目前为止,我坚持这一点:

move = 2
for i in range(3):
    for j in range(3):
        if move not in board[i][j]:
            move = int(input("Number already taken. Pick another"))
Run Code Online (Sandbox Code Playgroud)

但它不起作用。这似乎是一个相当简单的检查,但我不知道为什么它不会运行。有没有人有更好的建议如何检查给定数字的这些列表?

干杯

Yun*_*Luo 6

尝试使用any功能。

m = [[1,'O', 3], [4, 5, 6], [7, 8, 'X']]
while True:
    move = int(input('....'))
    if any(move in row for row in m):
        break
Run Code Online (Sandbox Code Playgroud)