13.12 Bad Aim


#1



My code does exactly what I want it to except that I get this: Oops, try again. 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.

Here is what I get in the output window:
O O O O O
O O O O O
O O O O O
O O O O O
O O O O O
Guess Row: 0
Guess Col: 5
3
1
Oops, that is not even in the ocean.
O O O O O
O O O O O
O O O O O
O O O O O
O O O O O
None


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[0]) - 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!"
else:
    if guess_row not in range(5) or guess_col not in range(5):
        print "Oops, that is not even in the ocean."
    else:
        print "You missed my battleship!"
        board[guess_row][guess_col]='X'
print_board(board)


#2

the string printed should be an exact match, copy it from the instructions

you have that is and it should be that's (which is why you should copy it from the instructions


#3

This is not exactly the correct message; compare it to what is in the instructions ...

"Oops, that is not even in the ocean."

#4

Sometimes it's the string it has to be exactly the same as in the instructions. so you can copy and paste the sentence if you're not sure "Ooops" must be "Ooops" not "ooops" not "Oops"


#5

Thanks for your help


#6