Python版本更新后AI井字棋程序出现Pylint E0001语法错误求助
解决Python版本更新后井字棋程序的SyntaxError问题
哦,这个问题我太熟悉了!你遇到的是Python 2和Python 3之间最典型的语法差异之一——print语句与print函数的区别。
问题根源
你写的代码是Python 2的语法:在Python 2里,print是一个语句,不需要加括号就能直接使用;但升级到Python 3后,print变成了内置函数,必须用括号包裹输出内容,否则就会触发invalid syntax(无效语法)错误,也就是你看到的pylint E0001提示。
修复方案
只需要把所有的print语句改成函数调用形式,给输出内容加上括号即可。针对你出错的那行代码,修改如下:
原始错误代码:
print " "+board[x]+ " | "+board[x+1]+ " | " +board[x+2]
修改后代码:
print(" "+board[x]+ " | "+board[x+1]+ " | " +board[x+2])
另外,你代码里的另外两处print也需要同步修改:
- 把
print"-----------"改成print("-----------") - 把else分支里的空
print改成print()
完整修复后的print_board函数
def print_board(): x = 0 for i in range(0,3): print(" "+board[x]+ " | "+board[x+1]+ " | " +board[x+2]) x+=3 if(x<8): print("-----------") else: print()
这样修改后,你的井字棋程序就能在Python 3环境下正常运行了,pylint的语法错误提示也会消失。
内容的提问来源于stack exchange,提问作者Mohamed Farook Mohamed Fazrin
相关产品推荐
相关产品推荐

