I've passed all of the Battleship exercises but my game still doesn't work


I just finished the final Battleship exercise where I should have a functioning game, but mine doesn't work at all. Throughout all of the exercises there were lots of points that my code didn't behave exactly the right way but it would show as completed. I assumed that the bugs I was seeing were just going to be ironed out in a later process, but apparently not. The code I have up to this point is below.

When I run the code the game only lets me make one guess and then stops instead of the 4 total guesses.

from random import randint

board = []

for x in range(5):
    board.append(["O"] * 5)

def print_board(board):
    for row in board:
        print " ".join(row)

print "Let's play Battleship!"

def random_row(board):
    return randint(0, len(board) - 1)

def random_col(board):
    return randint(0, len(board[0]) - 1)

ship_row = random_row(board)
ship_col = random_col(board)
print ship_row
print ship_col

# Everything from here on should go in your for loop!
# Be sure to indent four spaces!
turn = 0
for turn in range(5):
    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 > 4) or (guess_col < 0 or guess_col > 4):
        print "Oops, that's not even in the ocean."
    elif(board[guess_row][guess_col] == "X"):
        print "You guessed that one already."
        print "You missed my battleship!"
        board[guess_row][guess_col] = "X"
        print (turn + 1)
    if turn == 3:
        print "Game Over"
    # Print (turn + 1) here!
    print (turn + 1)


Omg, how can u put the 'break' at the beginning of the for loop.
It should be right after the correct guess, where u print "Congratulations!"