Как я могу проверить, есть ли значение в словаре - PullRequest
0 голосов
/ 19 сентября 2019

Я пишу шахматную программу, и эта функция перемещает фигуры.Однако в настоящее время оно не вызывает условие: if self.square in player.position.values()==True: и просто уходит в другое, когда я пытаюсь проверить, находится ли переменная self.square в позиции словаря.Есть ли лучший способ сделать это?Мой полный код для этой части функции:

if self.square==(-10,-10):
    self.square=squareposition
    print("it gets to here")
    if self.square in player.position.values()==True:
        print("it currently doesn't get to here. It goes into the else")
        for key in player.position:
            pieceposition=player.position.get(key)
            if self.square==pieceposition:
                self.piece=key
                break
            else:
                pass
    else:
        self.gamelabel.config(text="Error no " +str(turn)+" piece on this square please try again")
        self.square==(-10,-10)

1 Ответ

3 голосов
/ 19 сентября 2019

Предполагая, что self.square - это значение, которое вы ищете, а player.position - это словарь, тогда просто:

if self.square in player.position.values():
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...