# 11/19 - Code keeps giving an error

#1

Hello,

I have browsed the answers here for this question, copied every single solution, but still getting an error. Here is a screen shot.

Could anyone help, please?

#2

Can you post your whole code?

Please remember about proper formatting (select your code and click on the `</>` icon in the toolbar).

#3

This code works for me..

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:
print "You missed my battleship!"
board[guess_row][guess_col] = "X"
print_board(board)

#4

#5

Hi ....why is it board[guess_row][guess_col]="X" and not =="X"

#6

Hello.

Here you want to mark this place at our board with `X` letter to show that this place was already visited.

To change value you have to use assignation operator `=`.

Equality check operator `==` is used usually inside conditional expressions, like `if` for example.