13. I passed but i think my code is wrong


#1



from random import randint

board = []

for x in range(0, 5): # makes 5x5 board
    board.append(["O"] * 5)

def print_board(board): #removes the " " and commas
    for row in board:
        print " ".join(row)

print_board(board)

def random_row(board): #initate random row
    return randint(0, len(board) - 1)

def random_col(board): #initiate random column
    return randint(0, len(board[0]) - 1)

print ship_row
print ship_col

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:
    print "You missed my battleship!"

board [guess_row][guess_col] = "X"

print print_board (board)

Hi all. If I run the code, it says I passed but when I test it by inputting the correct numbers it still says I missed the battle ship.
What am I doing wrong?


#2

Are you seeing a parse error in the console?


#3

no error appears on the window at all. As I've said it lets me proceed to the next lesson (which is Lesson 13.12 Bad Aim)


#4

I'm a little concerned about printing variables that have not yet been declared.

Copy your code. Refresh. Paste in your code. Submit.

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
Traceback (most recent call last):
  File "<stdin>", line 20, in <module>
NameError: name 'ship_row' is not defined

#5

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
Traceback (most recent call last):
File "python", line 20, in
NameError: name 'ship_row' is not defined

I refreshed and now I get the error its all resolved now. Thanks!


#8