Курс 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. Хеширование паролей с использованием salt
  2. Итераторы с потерямиZIP
  3. Лямбда-функции в Python
  4. Контроль точности вывода чисел
  5. Нахождение максимального значения и его индекса в списке
  6. Метод title() в Python
  7. Транспонирование матрицы в Python
  8. Метод __iand__ для пользовательских классов
  9. IPython и Jupyter Notebook: руководство
  10. Создание панели меню Tkinter
  11. Отладка в Python
  12. Переворот строки с помощью срезов
  13. Вывод с переменной через запятую
  14. Оптимизация создания строк
  15. Обход словаря в Python
  16. Тип данных TypeVarTuple
  17. Работа с необработанными строками
  18. Автоматизация действий с Pyautogui
  19. Регистрация на хакатоне
  20. Разделение строки с помощью split()
  21. Обработка StopIteration в Python
  22. Преобразование объекта в строку
  23. Условные выражения в Python
  24. Генерация случайных чисел Python
  25. Добавление элементов в список: append() vs extend()
  26. Цикл for с enumerate() в Python
  27. Объединение строк с помощью метода join
  28. Метод join() для объединения элементов в строку.
  29. Переворот списка в Python
  30. Метод rsub для пользовательских чисел
  31. Руководство по библиотеке pydantic
  32. Замеры производительности в Python
  33. Переопределение унарных операторов
  34. Методы list в Python
  35. Игра Виселица на Python
  36. Сортировка в Python
  37. Работа с очередями в Python
  38. Объединение списков в Python
  39. Именованные срезы в Python
  40. Создание генераторов в Python
  41. Глобальные переменные в Python
  42. Работа с утверждениями в Python
  43. Применение функции к списку
  44. Профилирование данных с Pandas
  45. Выборка чисел
  46. Сериализация данных в JSON с помощью json.dumps
  47. Оболочка Python

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