使用indexerror创建if语句 – Python

我正在尝试创建一个类似于蛇的游戏.不同之处在于通过使用randint接收食物配给量,然后玩家将能够选择蛇应该在哪个方向上生长,起始位置也是随机选择的.游戏领域是用矩阵构建的,因此通过选择使列表超出范围的增长方向,可以“进入墙壁”.

我的问题是,如果玩家选择以一种使列表超出范围的方式增长,那么可以创建一个以“游戏结束”结束游戏的if状态,例如:

if IndexError: list index out of range : 
         print("Game over")

使用异常处理我的代码看起来像这样:

 try :

    if p == 0:
        table[x][y] = "+"
    elif p == 1:
        table[x][y] = "+"
        table[x][y+1] = "+"
    elif p == 2:
        table[x][y] = "+"
        table[x][y+1] = "+"
        table[x][y+2] = "+"
    else:
        table[x][y] = "+"
        table[x][y+1] = "+"
        table[x][y+2] = "+"
        table[x][y+3] = "+"
 except IndexError :
                 print ("Game Over")

但我得到错误“unindent不匹配任何外部缩进级别”

最佳答案 使用
exception handling

 try :
     #your code
 except IndexError:
    print "Game Over"
点赞