ex exxam.ruPython с нуляШаг 10.1 · Проект «Крестики-нолики»
52 / 62На главную
шаг 10.1 · проект

Проверяем победителя

Игровое поле — вложенный список, а победа — это три одинаковых символа в одной линии.

Доска для крестиков-ноликов — это вложенный список: три строки, в каждой три клетки. board[0] — первая строка, а board[0][1] — её вторая клетка.

board = [ ["X", "O", "X"], ["O", "X", "O"], ["O", "X", "X"], ]

Выиграть можно строкой, столбцом или диагональю. Все восемь линий уже собраны в списке lines: остаётся научиться проверять одну линию — и цикл найдёт победителя.

  1. Сравни первую и вторую клетку линии, затем вторую и третью.
  2. Добавь проверку, что клетка не пустая: ".".
  3. Верни результат из is_winner и запусти программу.
Чтобы шаг был засчитан, нажмите «Проверить». «Выполнить» только показывает результат в консоли, но не завершает шаг.

Отлично! Диагональ из трёх X — выигрышная, поэтому программа нашла победителя.

Требования

is_winner(line) возвращает True, если все три клетки одинаковы и это не точка. Вывод программы — Победил X!.

Проверка

Проверка запускает программу с чистого листа, сверяет вывод и вызывает is_winner для выигрышной, смешанной и пустой линии.

Подсказки Открываются по одной
живая сессия
Консоль общая сессия
Python 3.14 · переменные сохраняются между командами
>>>
Готовлю консоль…
консоль Живая сессия Python