Курс Python → Инициализация переменных

Когда мы начинаем разбираться с развернутой инструкцией по написанию игры «Крестики-нолики» на Python, первым шагом будет инициализация переменных. В данном случае, мы можем начать с создания переменной row, которая будет представлять собой одну строку игрового поля. При этом, важно понимать, что каждый элемент этой строки будет представлять одну клетку игрового поля — крестик, нолик или пустое место.

row = [' ', ' ', ' ']

Затем, для создания игрового поля размером 3х3, мы можем инициализировать переменную board, которая будет представлять собой список строк (каждая строка — это одна строка игрового поля). Однако, важно помнить, что если мы будем инициализировать board путем умножения переменной row, то каждый элемент board будет ссылаться на один и тот же список, на который ссылается row.

board = [row] * 3

Чтобы избежать этой проблемы и иметь возможность изменять каждую строку игрового поля независимо, мы можем создать board без использования переменной row. Вместо этого, мы можем просто создать список списков, представляющих каждую строку игрового поля отдельно.

board = [[' ', ' ', ' '], [' ', ' ', ' '], [' ', ' ', ' ']]

Таким образом, после инициализации игрового поля, мы можем приступить к написанию логики игры «Крестики-нолики» на Python, включая ход игроков, проверку победителя и отображение игрового поля. Например, мы можем написать функцию для отображения игрового поля следующим образом:

def display_board(board):
    for row in board:
        print('|'.join(row))
        print('-' * 5)
Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Обучение модели с указанием эпох
  2. Создание списка через итерацию
  3. Возвращение нескольких значений
  4. Создание матрицы в Python
  5. Модуль pprint: улучшение вывода данных
  6. Управление мышью и клавиатурой с Pyautogui
  7. Работа со строками в Python.
  8. Декораторы в Python
  9. Функции map, filter и reduce
  10. Работа с пакетами
  11. Работа с кортежами
  12. Шаблоны Flask: условия и циклы
  13. Работа с аргументами командной строки
  14. Оператор walrus в Python
  15. Метод classmethod
  16. Поиск самого частого элемента
  17. Поиск самого длинного слова в списке с использованием max()
  18. Управление доступом к модулю
  19. Преобразование строки в число
  20. split() без разделителя
  21. Создание новых функций с помощью functools.partial
  22. Создание вложенного генератора
  23. Работа с датой и временем в Python
  24. Преобразование генераторов в циклы
  25. Удаление ресурса в Python
  26. Перевернуть список в Python
  27. Установка Git и AWS CLI
  28. Декоратор для группы пользователей в Django
  29. Множества и frozenset
  30. Установка Home Assistant
  31. Сортировка HTML-элементов
  32. Работа с географическими данными.
  33. Работа с пользовательским вводом
  34. Сериализация и десериализация объектов
  35. Переопределение метода delitem в Python
  36. Поиск подстроки в строке
  37. Класс-оболочка для словарей
  38. Логические операторы в Python
  39. Функция enumerate в Python
  40. Модуль itertools: комбинации и перестановки
  41. Оператор space-invader
  42. Метод __getitem__ в Python
  43. Сортировка в Python
  44. Работа с модулем random
  45. Контекстный менеджер в Python

Marketello читают маркетологи из крутых компаний