缩进错误:意外的缩进 - Python 2.7
我正在用Python为我的作业制作一个井字棋游戏,但我不明白为什么会出现一个识别错误。
这是我的代码:
import sys
import random
def draw(board, x, y):
new_x = 0
for line in xrange(y):
for line2 in xrange(new_x, x):
print "|", board[line2], "|",
print
new_x += y
x += y
def player_team():
choice = raw_input("Choose X or O... ")
if choice.upper() == 'X':
player = 'X'
computer = 'O'
elif choice.upper() == 'O':
player = 'O'
computer = 'X'
else:
player_team()
return player, computer
if __name__ == '__main__':
cord = 3
board = [' * '] * cord**2
draw(board, cord, cord)
player, computer = player_team()
错误的具体内容是:
File "chess.py", line 29
player, computer = player_team()
^
IndentationError: unexpected indent
2 个回答
3
你在代码里混用了制表符和空格。这样做可不好;Python会把制表符当作像记事本那样的处理方式,把它看作是足够的空格,直到下一个8个空格的缩进级别。
要解决这个问题,把所有的制表符换成4个空格。还有,建议在你的编辑器里开启“显示空白字符”的功能,并用-tt
这个选项运行Python(在Python 3中默认就是这样),这样Python就会告诉你哪些地方混用了制表符和空格,可能会造成困惑。
9
你在代码的最后一行用了制表符(Tab),而不是空格(Space)。这个在你编辑帖子的时候可以看到。只要把它换成四个空格,这个错误信息就不会再出现了!