Простой тренажёр памяти и внимательности. На Питоне (Python)

131 прочитал
Предоставлен код программы простейшего тренажёра памяти, написанного на Питоне (Python), с краткими комментариями. Код короткий, меньше сотни строк.

Предоставлен код программы простейшего тренажёра памяти, написанного на Питоне (Python), с краткими комментариями. Код короткий, меньше сотни строк.

Питон-скрипт генерирует экраны со словом, обозначающим один из цветов радуги, с добавленным чёрным. Но нужно не прочитать это слово, а назвать цвет букв, которыми это слово написано. Сам цвет выбирается случайным образом из названной восьмёрки и почти всегда отличается от оттенка, который обозначает само слово. В этом собственно и заключается тренировка памяти и внимательности: нужно абстрагироваться от названия цвета, заложенного в слове, и определить только колер его букв.

Комментарии к коду

PyGame и другие библиотеки Питон

Загружаемые библиотеки предназначены для работы в интегрированной среде, поддерживающей интерпретатор Python:

— написания простых вспомогательных функций, работающих с файлами и временем (os и time);

— random – для работы с генерацией случайных выборок;

— pygame – это библиотека для создания простейших игр на Питон. для отображения самого слова, с вариациями некоторых параметров.

Загружаемые библиотеки Питон
Загружаемые библиотеки Питон

Константы и инициализация библиотеки PyGame.

Константы и инициализация библиотеки PyGame.
Константы и инициализация библиотеки PyGame.

Функции

Функция draw_text рассчитывает точку помещения текстового контейнера на поверхности (это такой термин для этой библиотеки), с учетом длины самого слова и центрированием по центру экрана.

Функция clear_screen — очистка экрана в зависимости от типа операционной системы.

Функция get_index — определение номера передаваемого значения в списке. Хотя есть стандартная функция для такой процедуры, хотелось избежать непонятных глюков, иногда возникающих при её использовании.

Функции расчета позиции текстового контейнера и вспомогательные.
Функции расчета позиции текстового контейнера и вспомогательные.

Функция get_text_container_chars случайным образом генерирует цвет букв слова в формате RGB, в котором выводится текст самого слова. В большинстве этот текст не совпадает с цветом шрифта, которым оно выводится. В более полном варианте кода здесь же определяются и другие меняющиеся параметры вывода.

Функции генерации цвета букв и нименования слова.
Функции генерации цвета букв и нименования слова.

Главный цикл программы

Основной цикл алгоритма, с определением значений параметров и обновлением экрана. Задержка в 2 секунды после каждого шага. Функции time и clock применены для уменьшения интенсивности загрузки сервера запросами.

Гланвй цикл программы.
Гланвй цикл программы.

В данном Питон-скрипте показан только код простейшей реализации такого тренажёра памяти и внимательности. У меня код работает в среде Visual Studio Code (VSC). Пробовал запускать через блокнот Jupyter. Но в графике не пошло. Разбираться почему, не стал.

Посмотреть на работу как данного алгоритма, так и более сложных вариаций этого тренажёра (и его развития), можно ЗДЕСЬ >> и ЗДЕСЬ

Если кликнуть по названию канала, то увидите другие статьи. Можно выбрать еще что-то интересное для себя. А для просмотра будущих статей и поддержки автора — лучше вообще подписаться.

Имеется также постоянно обновляемый гид-путеводитель по статьям канала.

#Python #Питон #тренировкавнимания #тренировкапамяти #тренажерпамяти