Make sure you print "Oops, that's not even in the ocean." if the user guesses a row or column that is off the board.
It's actually printing the Ooops message so I don't understand why it's coming back as an error.
if guess_row == ship_row and guess_col==ship_col: print "Congratulations! You sank my battleship!" elif guess_row not in range(0,-1) or\ guess_col not in range(0,-1): print "Ooops, that's not even in the ocean." else: board[guess_row][guess_col] = "X" print_board(board) print "You missed my battleship!"