Я пытаюсь написать программу tik ta c toe на python. Но я застрял на поиске решения проблемы нахождения условия победы. Вот мой код на данный момент:
tik_tac_toe_board = []
diagonal_one = []
diagonal_two = []
n = 3
for i in range(3):
row = []
for y in range(3):
row.append("")
tik_tac_toe_board.append(row)
x_or_o_selection = input("Are you going to be using x's or o's: ")
print(x_or_o_selection)
while True:
diagonal_one = []
diagonal_two = []
columns = [[], [], []]
rows = [[], [], []]
input_tik = input("x or o, with position(x,y): ")
list_placeholder = input_tik.split(",")
position = list_placeholder[1:]
x_or_o = list_placeholder[0]
if x_or_o != x_or_o_selection:
print("invalid input")
elif x_or_o != "x" and x_or_o != "o":
print("invalid input")
elif x_or_o == "x" or x_or_o == "o":
tik_tac_toe_board[int(position[0])][int(position[1])] = (list_placeholder[0])
columns[0] = [tik_tac_toe_board[0][0], tik_tac_toe_board[1][0], tik_tac_toe_board[2][0]]
columns[1] = [tik_tac_toe_board[0][1], tik_tac_toe_board[1][1], tik_tac_toe_board[2][1]]
columns[2] = [tik_tac_toe_board[0][2], tik_tac_toe_board[1][2], tik_tac_toe_board[2][2]]
rows[0] = [tik_tac_toe_board[0]]
rows[1] = [tik_tac_toe_board[1]]
rows[2] = [tik_tac_toe_board[2]]
for i in range(0, len(tik_tac_toe_board)):
diagonal_one.append(tik_tac_toe_board[i][i])
for i in range(0, len(tik_tac_toe_board)):
diagonal_two.append(tik_tac_toe_board[(n-i)-1][i])
if rows[0][1:] == rows[0][:-1]:
print("winner")
break
print(tik_tac_toe_board[0])
print(tik_tac_toe_board[1])
print(tik_tac_toe_board[2])
Я пытался установить условие выигрыша, используя первую строку таблицы тик та c для тестирования, но даже когда условие выигрыша выполнено, код не распознает победителя и не ломается.