【发布时间】:2014-02-21 07:44:44
【问题描述】:
我正在 Codeacademy.com 上学习 Python 课程。我对编程完全陌生。我们正在设计游戏“Battleship”的小版本,论坛中的每个人似乎都陷入了同一个问题。它要求您在“if”语句中插入一个 break 语句。经过几天检查我的缩进和代码后,我在您的页面中找到了这个答案:
所以,这是我的代码:
for turn in range(4):
print turn+1
guess_row = int(raw_input("Guess Row:"))
guess_col = int(raw_input("Guess Col:"))
if guess_row == ship_row and guess_col == ship_col:
print "Congratulations! You sunk my battleship!"
if (guess_row < 0 or guess_row > 5) or (guess_col < 0 or guess_col > 5):
print "Oops, that's not even in the ocean."
elif(board[guess_row][guess_col] == "X"):
print "You guessed that one already."
else:
print "You missed my battleship!"
board[guess_row][guess_col] = "X"
# Print (turn + 1) here!
print print_board(board)
if turn >4:
print "Game Over"
说明要求在打印语句“恭喜!你击沉我的战舰!”下直接插入一个“中断”
现在,如果我在没有 break 语句的情况下运行代码,它可以正常工作。如果我使用 break 语句运行代码,游戏可以运行,但会显示“哎呀。您是否插入了 break 语句?”
很多其他人似乎也无法克服这个错误,论坛上的版主坚持说程序没有错误。
所以,对于那里的专家,请告诉我我是否正确,即,如本论坛中的帖子所建议的那样,中断语句在此 if 语句中不起作用。
我很抱歉过于冗长,但我想给出确切的问题,以便我可以返回 Codeacademy 并给出答案!
【问题讨论】:
-
你的缩进是否正确?因为您所有的
if语句不是for循环的一部分。 -
是的,它们在程序中是正确的。不幸的是,即使我在此处使用格式中的括号来粘贴我的代码,它也不正确。
-
您是否混合使用制表符和空格进行缩进?如果在此处粘贴并在选择 all 时使用
{}按钮,代码没有正确缩进,您很可能在源代码中使用了制表符。
标签: python for-loop if-statement break