Dando o erro no elif direto


#1

O meu codigo esta dando o erro no elif direto, mas não vi nada de errado. alguem pode ajudar ??

from random import randint

board = []

#cria a coluna
for x in range(0, 5):
    board.append(["O"] * 5)
#cria as linhas
def print_board(board):
    for row in board:
        print " ".join(row)
#Mostra o resultado
print_board(board)

#cria uma posicao aleatoria de linha
def random_row(board):
    return randint(0, len(board) - 1)

#cria uma posicao aleatorio de coluna
def random_col(board):
    return randint(0, len(board[0]) - 1)

#define a posicao do navio escondido
ship_row = random_row(board)
ship_col = random_col(board)

#Pega uma posicao do usuario
guess_row = int(raw_input("Guess Row:"))
guess_col = int(raw_input("Guess Col:"))

#Mostra a posicao do navio escondido
print ship_row
print ship_col

#Verifica se as posicao navio x usuario sao iguais
if guess_row==ship_row and guess_col==ship_col:
    print("Congratulations ! You sank my battleship")
# se nao for imprime a mensagem e mostra o tabuleiro com um X na posicao indicada pelo usuario, caso o valor esteja fora do range de 0 a 4, ele informa atirou fora do oceano
else:
    if (guess_row or guess_col) not in range(5):
        print("Oops, that's not even in the ocean.")
    elif board[guess_row][guess_col]=="X":
        print ("Voce ja tentou esse")
    else:
        print("You missed my battleship!")
        board[guess_row][guess_col]="X"
        print_board(board)
        print guess_row,guess_col

13/18 Help Please!
#2

Olá, @prof.luis!
Você poderia dizer qual foi o tipo de erro gerado?
Eu testei o seu código e o mesmo executou normalmente.

Única coisa que realmente está faltando é o for loop para que algumas linhas de código sejam executadas novamente.