Example 1: tic tac toe python
def slant_check(matrix,P1,P2):
empty_lst1 = []
empty_lst2= []
lst1 = []
lst2 = []
x = len(matrix)
v = len(matrix) - 1
t = 0
g = 0
n = True
while n:
for i in range(x):
if matrix[i][i] == P1 or matrix[t][i] == P1:
empty_lst1.append(matrix[i][i])
if matrix[i][i] == P2 or matrix[t][i] == P2:
empty_lst2.append(matrix[i][i])
while v >= g:
if matrix[g][v] == P1:
lst1.append(matrix[g][v])
if matrix[g][v] == P2:
lst2.append(matrix[g][v])
t -= 1
v -= 1
g += 1
if len(empty_lst1) == x:
return True
if len(empty_lst2) == x:
return True
if len(lst1) == x:
return True
if len(lst2) == x:
return True
return False
def vertical_check(lst,P1,P2):
for i in range(len(lst) - 2):
for j in range(len(lst)):
if lst[i][j] == P1 and lst[i + 1][j] == P1 and lst[i + 2][j] == P1:
return True
if lst[i][j] == P2 and lst[i + 1][j] == P2 and lst[i + 2][j] == P2:
return True
return False
def horizontal_check(lst,P1,P2):
for i in range(len(lst)):
for j in range(len(lst) - 2):
if lst[i][j]== P1 and lst[i][j + 1]== P1 and lst[i][j + 2]== P1 :
return True
if lst[i][j]== P2 and lst[i][j + 1]== P2 and lst[i][j + 2]== P2 :
return True
return False
def find_grid2(place,lst):
for i in range(len(lst)):
for j in range(len(lst[i])):
if place == lst[i][j]:
return lst.index(lst[i])
def find_grid1(place,lst):
for i in range(len(lst)):
for j in range(len(lst[i])):
if place == lst[i][j]:
return lst[i].index(place)
def print_lst(lst):
for i in range(len(lst)):
for j in range(len(lst[i]) - 2):
print(lst[i][j],'|', lst[i][j + 1],'|', lst[i][j + 2])
print('----------')
def tic_tac_toe():
lst = [[1,2,3],
[4,5,6],
[7,8,9]]
P1 = 0
P2 = 0
counter_loop = 0
_ = 0
new_lst = [1,2]
while True:
P1 = input('Player1 select "x" or "o" ? (Type in x or o):\n').lower()
if P1 == 'x':
print('Player2 is now "o"!\n')
P2 = 'o'
break
if P1 == 'o':
print('Player2 is now "x"!\n')
P2 = 'x'
break
else:
print('Try Again\n')
print_lst(lst)
while _ < len(lst):
for i in range(len(lst[_])):
if counter_loop == 9:
print("Tie!")
break
place_grid1 = input('Where would Player 1 like to place? : ')
if int(place_grid1) >= 10 or int(place_grid1) <= 0:
print('Try Again')
place_grid1 = input('Where would Player 1 like to place? : ')
break
place_grid = int(place_grid1)
counter_loop += 1
inner_index1 = find_grid1(place_grid,lst)
outer_index1 = find_grid2(place_grid,lst)
lst[outer_index1][inner_index1] = P1
print_lst(lst)
if horizontal_check(lst,P1,P2) == True:
print("Player 1 wins!!")
counter_loop = 9
break
if vertical_check(lst,P1,P2) == True:
print("Player 1 wins!!")
counter_loop = 9
break
if slant_check(lst,P1,P2) == True:
print("Player 1 wins!!")
counter_loop = 9
break
if counter_loop == 9:
print("Tie!")
break
place_grid2 = input('Where would Player 2 like to place? : ')
if int(place_grid2) >= 10 or int(place_grid2) <=0:
print('Try Again')
place_grid2 = input('Where would Player 2 like to place? : ')
break
place_gridy = int(place_grid2)
counter_loop += 1
inner_index2 = find_grid1(place_gridy,lst)
outer_index2 = find_grid2(place_gridy,lst)
lst[outer_index2][inner_index2] = P2
print_lst(lst)
if horizontal_check(lst,P1,P2) == True:
print("Player 2 wins!!")
counter_loop = 9
break
if vertical_check(lst,P1,P2) == True:
print("Player 2 wins!!")
counter_loop = 9
break
if slant_check(lst,P1,P2) == True:
print("Player 2 wins!!")
counter_loop = 9
break
if counter_loop == 9:
print("Tie!")
break
if counter_loop == 9:
break
_ += 1
tic_tac_toe()
Example 2: program for tic tac toe in python
board = ['-', '-', '-',
'-', '-', '-',
'-', '-', '-']
gameplay = [1, 0, 1, 0, 1, 0, 1, 0, 1]
def display_board():
print(board[0] + '|' + board[1] + '|' + board[2])
print(board[3] + '|' + board[4] + '|' + board[5])
print(board[6] + '|' + board[7] + '|' + board[8])
def win_check():
for col in range(7):
if board[col] is board[col+1] is board[col+2] == 'X':
print('You win')
return True
if board[col] is board[col+1] is board[col+2] == 'O':
print('You win')
return True
for row in range(3):
if board[row] is board[row+3] is board[row+6] == 'X':
print('You win')
return True
if board[row] is board[row+3] is board[row+6] == 'O':
print('You win')
return True
dia = 0
if board[dia] is board[dia+4] is board[dia+8] == 'X':
print('You win')
display_board()
return True
elif board[dia] is board[dia+4] is board[dia+8] == 'O':
print('You win')
display_board()
return True
dia = 2
if board[dia] is board[dia+2] is board[dia+4] == 'X':
print('You win')
display_board()
return True
elif board[dia] is board[dia+2] is board[dia+4] == 'O':
print('You win')
display_board()
return True
def play_game():
i = 0
if gameplay[i] == 1:
board[val] = 'X'
gameplay.pop(i)
res = win_check()
if res is True:
return True
else:
display_board()
inval()
else:
board[val] = 'O'
gameplay.pop(i)
res = win_check()
if res is True:
return True
else:
display_board()
inval()
def inval():
global val
val = int(input('Choose the values from 0 to 8'))
try:
if val<=8 and val>=0:
for item in range(9):
if item == val:
res = play_game()
if res is True:
break
break
else:
print('Enter Valid Input!!!!')
inval()
except TypeError:
print('Enter Valid Input!!!!')
inval()
display_board()
inval()