# Failed to run Codecademy code in my IDE( Rodeo python 3.5)

#1

This is my code i did in Codecademy..

``````#### MY PYTHON NUMBER GANE

from random import randint

board = []

for x in range(5):
board.append(["O"] * 5)

def print_board(board):
for row in board:
print " ".join(row)

print ("Let's play Battleship!")
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)
#### HINT for SHIP
#print ship_row
#print ship_col
###
# Everything from here on should go in your for loop!
# Be sure to indent four spaces!
turn = 0
for turn in range(4):

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

if guess_row == ship_row and guess_col == ship_col:
print ("Congratulations! You sunk my battleship!")
break
else:
if (guess_row < 0 or guess_row > 4) or (guess_col < 0 or guess_col > 4):
print ("Oops, that's not even in the ocean.")
elif(board[guess_row][guess_col] == "X"):
print ("You guessed that one already.")
else:
print ("You missed my battleship!")
board[guess_row][guess_col] = "X"
### # Print (turn + 1) here!
print "Turn", turn + 1
if turn == 3:
print ("Game Over")
print_board(board)

###############END OF CODE##################``````

I run this same code in My rodeo python 3.5 IDE

I got this kind of error:

Syntax :name error in Raw input
guess_row = int(raw_input("Guess Row:"))
guess_col = int(raw_input("Guess Col:"))

this two lines.. " not defined"( i mentioned approximately not exactly)

SAme code got This error has occured in (http://www.learnpython.org/) this website online compiler or IDE

Traceback (most recent call last):
File "prog.py", line 37, in
ValueError: invalid literal for int() with base 10: '1 2 3'

Replace this line with your code.

#2

`raw_input` no longer exist in python3, it is now `input`

#3

Can you please tell me little briefly. How to define. I got again same error.

``````guess_row = int(input("Guess Row:"))

&
guess_row = input("Guess Row:")``````

i used this two type. again i got same error....THANKS in advance

#4

works fine now?

``````#### MY PYTHON NUMBER GANE

from random import randint

board = []

for x in range(5):
board.append(["O"] * 5)

def print_board(board):
for row in board:
print(" ".join(row))

print ("Let's play Battleship!")
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)
#### HINT for SHIP
#print ship_row
#print ship_col
###
# Everything from here on should go in your for loop!
# Be sure to indent four spaces!
turn = 0
for turn in range(4):

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

if guess_row == ship_row and guess_col == ship_col:
print ("Congratulations! You sunk my battleship!")
break
else:
if (guess_row < 0 or guess_row > 4) or (guess_col < 0 or guess_col > 4):
print ("Oops, that's not even in the ocean.")
elif(board[guess_row][guess_col] == "X"):
print ("You guessed that one already.")
else:
print ("You missed my battleship!")
board[guess_row][guess_col] = "X"
### # Print (turn + 1) here!
print("Turn", turn + 1)
if turn == 3:
print ("Game Over")
print_board(board)``````

i changed raw_input to input, and added parentheses for some of your print statements. And it works. Well, if you enter something that can't converted to a integer with `int()` you still get an error, your code doesn't cover this

#5

@stetim94 thanks brohhhh...its working..

#6