Курс 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. Разделение строки с помощью split()
  3. Поиск частых элементов в списке
  4. Проверка вхождения подстроки
  5. Генерация UUID в Python
  6. Настройка логгера Logzero
  7. Оптимизация гиперпараметров в Python
  8. Улучшение читаемости кода в Python
  9. Выход из профиля в Django
  10. Подсчет вхождений элементов
  11. Замена символов в строке
  12. Метод rpow в Python
  13. Срез списка в Python
  14. Метод remove() для удаления элемента из списка
  15. Приближение чисел в Python
  16. F-строки в Python
  17. Структуры данных в Python
  18. Работа с *args и **kwargs в Python
  19. Множественное назначение в Python
  20. Метод enumerate() в Python
  21. Разбиение строки в Python
  22. Метод __imod__ для Python
  23. Использование defaultdict в Python
  24. Избегайте ошибку FileNotFoundError
  25. Обработка ошибок в JSON данных
  26. Нахождение максимального значения и его индекса в списке
  27. Циклы в Python
  28. Комментарии в Python
  29. Упрощение работы с JSON-данными в Python
  30. Python union() функция — объединение множеств
  31. Вызов внешних программ в Python с помощью sh
  32. Оптимизация памяти с slots
  33. Обмен значений переменных в Python
  34. Работа с библиотекой requests
  35. Преобразование символов с помощью map
  36. Удаление дубликатов с помощью множеств
  37. Преобразование кортежа в словарь.
  38. Оператор «моржа» (Walrus Operator)
  39. Сортировка элементов в Python
  40. Преобразование чисел в восьмеричную строку
  41. Переопределение метода sub
  42. Модуль inspect: получение информации о объектах
  43. Реверс строки в Python
  44. Печать в одной строке
  45. Управление User-Agent в Python

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