Bad Aim, escaping the quote. Suggestion no questions


#1




This excerise should either explain escaping quotes to the student, or check the string output less literally.

The excercise really checks your output string, returning 'Oops, thats not even in the ocean.' will result in "your code looks abit off". Which is ■■■■■■■■, especially considering the fact that this whole course has never mentioned escape characters and I just so happen to know from experience. Still it took me 15 minutes to get passed this because I could not imagine this to be the error.


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)

print ship_row
print ship_col

guess_row = int(raw_input("Guess Row:"))
guess_col = int(raw_input("Guess Col:"))



# Write your code below!
if guess_row == ship_row and guess_col == ship_col:
    print "Congratulations! You sank my battleship!"
    
elif 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)


#2

the instructions use quotation marks around the string, then a apostrophe doesn't need to be escaped.


#3

Whoops :smiley: my mistake hehe


#4

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.