Курс 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. Создание тестовых данных с Faker
  2. Работа с IP-адресами в Python
  3. Профилирование кода на Python
  4. Нахождение хеша для бесконечности и NaN в Python
  5. Динамические маршруты во Flask
  6. Инвертирование словаря
  7. Создание веб-приложения с Flask
  8. Конвертация изображений в PDF
  9. Любовь к Python
  10. Функциональное программирование в Python
  11. Тестирование функции сложения
  12. Участие в сообществе @selectel
  13. Конкатенация строк с методом join()
  14. Вычисление логарифмов в Python
  15. Сложные типы данных в Python
  16. Область видимости переменных
  17. Оператор continue в Python
  18. Скрытие вывода данных
  19. Работа с PosixPath() в Python
  20. Проверка класса объекта
  21. Счетчик в Python: most_common()
  22. Лямбда-функции в цикле
  23. Профилирование данных с Pandas
  24. Особенности запятых в Python
  25. Функции высшего порядка в Python
  26. Модуль os в Python: работа с файлами
  27. Проверка на палиндром
  28. Отладка в Python
  29. Тестирование модели в PyTorch
  30. Равенство и идентичность в Python
  31. Преобразование списков в словарь
  32. CLI-инструмент howdoi
  33. Измерение потребления памяти при сортировке
  34. Описание скриптов в README
  35. Обработка элементов в Python
  36. Управление User-Agent в Python
  37. Синхронизация доступа к ресурсам
  38. Пустой оператор pass в Python
  39. Аргументы *args и **kwargs
  40. Логические операторы в Python
  41. Присвоение значений переменным в Python
  42. Реверс строки и списка в Python.
  43. Методы работы со строками в Python
  44. Форматирование строк с f-строками
  45. Оценка выражений генератора в Python
  46. Область видимости переменных
  47. Чтение бинарного файла в Python.
  48. Проверка типа объекта в Python

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