首页 > 解决方案 > 使用 spyder IDE 在 python 3.6 中的单个 if 语句中测试多个条件的语法

问题描述

我正在尝试设计一个井字游戏并设计一个测试获胜条件的函数。编译器在 if 语句的右括号中抛出错误无效语法。有人可以帮忙,因为我还是一个新手。

def win_check(board, marker,position):
    board[position] = marker
    if((board[9]=='X' and board[6] =='X' and board[3] == 'X') or
       (board[8]=='X' and board[5] =='X' and board[2] == 'X') or
       (board[7]=='X' and board[4] =='X' and board[1] == 'X') or
       (board[7]=='X' and board[8] =='X' and board[9] == 'X') or
       (board[4]=='X' and board[5] =='X' and board[6] == 'X') or
       (board[1]=='X' and board[2] =='X' and board[3] == 'X') or
       (board[1]=='X' and board[5] =='X' and board[9] == 'X') or
       (board[7]=='X' and board[5] =='X' and board[1] == 'X') or
       ):
        print("Player choosen X is winner")
        break()

单个 if 语句中的多个条件

标签: python-3.xif-statementspydermultiple-conditions

解决方案


您的if情况以or ):. 这是无效的,因为or后面必须跟一个表达式。删除最后一个or.


推荐阅读