Untitled
unknown
plain_text
2 years ago
2.1 kB
5
Indexable
from random import randint unused_cell = [1, 2, 3, 4, 5, 6, 7, 8, 9] play_ground = [['1', '2', '3'], ['4', '5', '6'], ['7', '8', '9']] player = input("Вы хотите играть крестиком? Ответьте y/n") if player == 'y': player = 'x' comp = 'o' else: player = 'o' comp = 'x' turn = randint(0, 8) play_ground[turn//3][turn % 3] = 'x' #Первый ход компьютера unused_cell.remove(turn + 1) #Игра продолжается пока не наступит чья-то победа, или ничья def nobody_win(): for line in play_ground: if line[0] == line[1] == line[2] != '.': print(line[0], "победили!") return False for i in range(3): if play_ground[0][i] == play_ground[1][i] == play_ground[2][i] != '.': print(play_ground[0][i], "победили!") return False if play_ground[0][0] == play_ground[1][1] == play_ground[2][2] != '.' or play_ground[0][2] == play_ground[1][1] == play_ground[2][0] != '.': print(play_ground[1][1], "победили!") return False if len(unused_cell) <= 0: print("Ничья, ходов нет!") return False return True #Основной цикл игры while nobody_win(): #Отображение поля for line in play_ground: print(*line) #Ход игрока turn = int(input("На какую клетку будете ходить?")) while turn not in unused_cell: turn = int(input("На эту клетку сходить нельзя.\nНа какую клетку будете ходить?")) else: unused_cell.remove(turn) play_ground[(turn-1)//3][(turn-1) % 3] = player #Ход компьютера if len(unused_cell) >= 1: turn = unused_cell[randint(0, len(unused_cell) - 1)] unused_cell.remove(turn) play_ground[(turn-1)//3][(turn-1) % 3] = comp for line in play_ground: print(*line)
Editor is loading...
Leave a Comment