如何检查我分配给列表列表中的项目然后将该变量实现到列表中的变量是否在该列表内部?

问题描述 投票:0回答:1

我创建了一个变量,该变量分配给列表列表中的一个项目,然后将该同一变量分配给另一个列表。每当我检查该变量是否在该列表内时,它不会检查名称“A6”,它只会检查分配的这些变量的值。

board = [['.', '.', '.', '.', '.', '.', '.', '.', '.'] , ['.', '.', '.', '.', '.', '.', '.', '.', '.'] , ['.', '.', '.', '.', '.', '.', '.', '.', '.']]

A1 = board[0][0]
A2 = board[0][1]
A3 = board[0][2]
A4 = board[0][3]
A5 = board[0][4]
A6 = board[0][5]
A7 = board[0][6]
A8 = board[0][7]
A9 = board[0][8]

B1 = board[1][0]
B2 = board[1][1]
B3 = board[1][2]
B4 = board[1][3]
B5 = board[1][4]
B6 = board[1][5]
B7 = board[1][6]
B8 = board[1][7]
B9 = board[1][8]

A = [A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9]

user_input = input('input stone coordinate: ')

def checks_coord():
    
    for i in A:
        
        if i == user_input:
            
            print('true')
    
checks_coord()


我尝试使用 for 循环来检查用户输入是否与列表“A”内的变量之一相同。例如,我输入“A6”,它不会打印 true,但每当我输入“.”时,它都会打印 true。

python list variable-assignment
1个回答
0
投票

你写的

A = [ ... , A6, ... ]

你想写的是

A = [ ... , (0, 5), ... ]

如果用户将一行称为

A
而不是
0
, 那么您将需要一种在它们之间来回映射的方法。 您可以使用
dict
。 或者你可能会发现

    chr(n + ord('A'))

是将整数

n
转换为
str
的便捷方法。

输入字符串

ch
的逆运算是

    ord(ch) - ord('A')
© www.soinside.com 2019 - 2024. All rights reserved.