-
-
Save guimaion/9275543 to your computer and use it in GitHub Desktop.
from random import randint | |
#initializing board | |
board = [] | |
for x in range(5): | |
board.append(["O"] * 5) | |
def print_board(board): | |
for row in board: | |
print " ".join(row) | |
#starting the game and printing the board | |
print "Let's play Battleship!" | |
print_board(board) | |
#defining where the ship is | |
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) | |
#asking the user for a guess | |
for turn in range(4): | |
guess_row = int(raw_input("Guess Row:")) | |
guess_col = int(raw_input("Guess Col:")) | |
# if the user's right, the game ends | |
if guess_row == ship_row and guess_col == ship_col: | |
print "Congratulations! You sunk my battleship!" | |
break | |
else: | |
#warning if the guess is out of the board | |
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." | |
#warning if the guess was already made | |
elif(board[guess_row][guess_col] == "X"): | |
print "You guessed that one already." | |
#if the guess is wrong, mark the point with an X and start again | |
else: | |
print "You missed my battleship!" | |
board[guess_row][guess_col] = "X" | |
# Print turn and board again here | |
print "Turn " + str(turn+1) + " out of 4." | |
print_board(board) | |
#if the user have made 4 tries, it's game over | |
if turn >= 3: | |
print "Game Over" |
Also don't get the for loop
maartenww commented on Aug 28
what does the print_board def do? i don't get theprint " "Join row
" ".join(row) joins together the elements in the list with a space between them.
And they're using a loop to have it print out with format of one row per print line instead of [[0,0,0,0,0],[0,0,0,0,0]........]
Dude, This is there in CODECADAMY, Don't try 2 fool us
Your last if statement is wrong, according to your comment, you state that if the user has had four attempts, it is game over. Currently, your if statement will print game over on the user third try and each try there after. If you want the user to get four attempts just put your if statement to if turn > 4.
This is from codecademy python course xD
The code doesn't work for me lmao..
Even though this is from Codecademy, I've made a new version for the people rocking V3.8.0 +.
Code:
`from random import randint
#initializing board
board = []
for x in range(5):
board.append(["O"] * 5)
def print_board(board):
for row in board:
print(" ".join(row))
#starting the game and printing the board
print("Let's play Battleship!")
print_board(board)
#defining where the ship is
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)
#asking the user for a guess
for turn in range(4):
guess_row = int(input("Guess Row:"))
guess_col = int(input("Guess Col:"))
# if the user's right, the game ends
if guess_row == ship_row and guess_col == ship_col:
print("Congratulations! You sunk my battleship!")
break
else:
#warning if the guess is out of the board
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.")
#warning if the guess was already made
elif(board[guess_row][guess_col] == "X"):
print("You guessed that one already.")
#if the guess is wrong, mark the point with an X and start again
else:
print("You missed my battleship!")
board[guess_row][guess_col] = "X"
# Print turn and board again here
print("Turn " + str(turn+1) + " out of 4.")
print_board(board)
#if the user have made 4 tries, it's game over
if turn >= 3:
print("Game Over")
`
CPS Test
https://cpsclicktest.com/
Thank you for sharing this type of information its very helpful – please look this one also.
Consistent practice is an effective way to improve at Kohi Clicking.<a href="https://cpsclicktest.com/"CPS Test </a regularly to improve your score. Other important factors include using a good gaming mouse, vibrating your hand, and performing online click tests. In Kohi, the average clicking speed is 3 to 6 clicks per second. You can achieve a mouse clicking speed of up to 10 clicks per second by combining various clicking techniques with routine practice.
what does the print_board def do? i don't get theprint " "Join row