Курс 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. Упрощенный вывод данных в Python
  2. Работа с getopt
  3. Модуль array: создание и использование массивов
  4. Создание namedtuple из словаря
  5. Избегайте ошибку FileNotFoundError
  6. Нахождение пересечения множеств
  7. Создание новой даты в Python
  8. Символ подчеркивания в Python
  9. Фильтрация списков с itertools
  10. Декодирование байтов в строку
  11. Отправка HTTP-запросов в Python
  12. Ключевое слово global в Python
  13. Библиотека wikipedia для Python
  14. Модуль subprocess: запуск внешних команд
  15. Метод classmethod
  16. Курсы Яндекс Практикум
  17. Преобразование данных в Python
  18. Работа с геоданными с помощью geopy
  19. Преобразование списка в словарь через генератор
  20. Сравнение def и lambda-функций
  21. Частичное совпадение ввода
  22. Метод ior для битовых операций
  23. Защита данных в Python
  24. Удаление дубликатов из списка с помощью dict.fromkeys
  25. Работа с переменными в Python
  26. Разделение функций на этапы
  27. Проблемы с dict в Python
  28. Подписка на SelectelNews в Twitter
  29. Функция map() и ленивая оценка
  30. Enum в Python
  31. Поиск элементов BeautifulSoup
  32. Метод setitem в Python
  33. Безопасный доступ к значениям словаря
  34. Объединение словарей в Python
  35. Метод get() в Python
  36. Проверка на палиндром
  37. Декораторы в Python
  38. Декораторы в Python
  39. Регистрация на TenChat
  40. Создание итерируемых объектов
  41. Особенности ключей словаря в Python
  42. Оптимизация строк в Python
  43. Переопределение метода xor в Python
  44. Преобразование регистра строк

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