python - 如何修复井字游戏检查赢功能中的运行时错误
问题描述
我正在使用 SimpleGUI 为我的 CompSci 类在 python 2 中编写井字游戏。我设置了一个二维数组,因此每当玩家在画布上的某个区域内单击时,它都会在该区域绘制一个 X 或一个 O,并且还将写入要设置为该字母的数组元素之一。这很好用。我定义了一个函数来检查数组的每一行以检查玩家是否赢了,它看起来像这样:
def checkRows():
if len(set(grid[0])) == 1:
winner = grid[0][0]
if len(set(grid[1])) == 1:
winner = grid[1][0]
if len(set(grid[2])) == 1:
winner = grid[2][0]
此外,我有一个计数器,每次填充一个正方形时递增一,最后有一个 while 循环运行 checkRows 函数,而计数器小于 9(因为 9 是需要填充的最大正方形数一名玩家获胜)。看起来像这样:
while counter < 9:
checkRows()
if winner == "X":
frame.add_label("X wins!", 100)
elif winner == "O":
frame.add_label("O Wins!", 100)
每次我运行代码时,它都会引发运行时错误,说“TimeLimitError:程序超出运行时间限制。”,有时在函数的第一行,有时在函数的第二行。有谁知道这可能是什么原因?
解决方案
推荐阅读
- python - 无法在python中获取url
- python - 最大两列数据框python pandas
- excel - 动态合并多个打印区域以在 Excel 宏中保存为 pdf
- angular - Angular Stopping and Clearing an interval
- python - 如何从数据框制作字典?
- python-3.x - Leetcode 无法理解一行代码 250 解决方案
- c# - 按数组中定义的顺序对字符串列表进行排序的有效方法?
- javascript - 溢出滚动表内的绝对位置
- java - 在 PostRequest 中使用 EntityManager 时出现错误 500
- javascript - vue-dropzone 不会在文件添加时生成缩略图