Python - TicTacToe
def print_board(board):
print(" | |")
print(" "+board[0]+" | "+board[1]+" | "+board[2])
print(" | |")
print("----------------------------------")
print(" | |")
print(" "+board[3]+" | "+board[4]+" | "+board[5])
print(" | |")
print("----------------------------------")
print(" | |")
print(" "+board[6]+" | "+board[7]+" | "+board[8])
print(" | |")
def begin() :
global iswin
global isdraw
global flag
global board
global a
global count
print_board(board)
while (not iswin)and(not isdraw):
if flag == 'X':
print("X's turn , please type the position: ")
a = int(input())
if(a < 1 or a > 8):
print("Invalid position")
continue
if(board[a-1] != " "):
print("Already occupied")
continue
board[a-1] = 'X'
if check(board):
print_board(board)
print("X won")
iswin = True
continue
flag = 'O'
else:
print("O's turn , please type the position: ")
a = int(input())
if(a < 1 or a > 8):
print("Invalid position:")
continue
if(board[a-1] != " "):
print("Already occupied")
continue
board[a-1] = 'O'
if check(board):
print_board(board)
print("O won")
iswin = True
continue
flag = 'X'
print_board(board)
count += 1
if count == 9:
isdraw = True
check(board)
if isdraw:
print("It's a draw")
print("Do you wanna play again? Y/N :")
til = input()
if til == 'Y' or til == 'y':
restart()
def check(board):
if checkrow() or checkcol() or checkdia():
return True
return False
def checkrow():
if (board[0] == board[1] == board[2] != " ") or (board[3] == board[4] == board[5] != " ") or (board[6] == board[7] == board[8] != " "):
return True
return False
def checkcol():
if (board[0] == board[3] == board[6]!= " ") or (board[1] == board[4] == board[7]!= " ") or (board[2] == board[5] == board[8]!= " "):
return True
return False
def checkdia():
if (board[0] == board[4] == board[8] != " ") or (board[2] == board[4] == board[6]!= " "):
return True
return False
def restart():
global iswin
global isdraw
global flag
global board
global a
global count
iswin = False
isdraw = False
flag = 'X'
board = [" "," "," "," "," "," "," "," "," "]
a = -1
count = 0
begin()
iswin = False
isdraw = False
flag = 'X'
board = [" "," "," "," "," "," "," "," "," "]
a = -1
count = 0
print("Do you want to begin the game? Y/N:")
x = input()
if x == 'y' or x == 'Y':
begin()
else:
print("Bye bye!!!")
print_board(board)
Comments
Post a Comment