I am test running the game and I am testing to see what happens when a player inserts a guess that is outside the 5x5 range.
I managed to pass the step that actually checks if I have put in the handler for this case, so I can technically move on.
However, when I enter a guess that is outside the range, the console does not print "Oops that's not even in the ocean."
Instead it gives this error message:
Traceback (most recent call last):
File "python", line 35, in
IndexError: list index out of range
Is this supposed to happen or is there something wrong with my code??
Thanks for the help!
Here's my complete code from random import randint board =  for x in range(0, 5): board.append(["O"] * 5) def print_board(board): for row in board: print " ".join(row) print_board(board) def random_row(board): return randint(0, len(board) - 1) def random_col(board): return randint(0, len(board) - 1) ship_row = random_row(board) ship_col = random_col(board) guess_row = int(raw_input("Guess Row:")) guess_col = int(raw_input("Guess Col:")) print ship_row print ship_col # Write your code below! if guess_row == ship_row and guess_col == ship_col: print "Congratulations! You sank my battleship!" elif guess_row == "X" and guess_col == "X": print "You guessed that one already." else: print "You missed my battleship!" board[guess_row][guess_col] = "X" print_board(board) if guess_row not in range(5) or guess_col not in range(5): print "Oops, that's not even in the ocean." else: print "You missed my battleship!" board[guess_row][guess_col] = "X" print_board(board)