Навигация по терминалу для консольного приложения Python

У меня консольное приложение, сначала пользователь авторизуется, затем ему в консоли выпадает список доступных для него команд.

Условно это так:

print('''
command1
command2
''')

Каждая команда вызывает функцию, это реализовано так:

command_dict = {'command1': get_command1, 'command2': get_command2}
command_dict[input('Введите команду: ')]()

Пользователь вводит команду, например command2 (Получение из бд списка всех юзеров), выполняется функция get_command2 и выводит на экран какие-то данные (допустим).

Можно в терминале как-то обрабатывать нажатия клавиш? стрелки вверх и вниз, ентер, эскейп. Чтобы навигация осуществлялась нажатием клавиш на клавиатуре прямо в терминале. Я видел такое, когда создаешь докер командной Docker init, там прям указатель бегает по строкам терминала когда кнопки вверх / вниз нажимаешь. Моё "меню" сильно больше и содержит вложенные меню, поэтому такая топорная навигация как сейчас - становится запарной. Как это дело привязать к клавишам? Может библиотеки есть какие-то?

Сам в гугле нашёл только графические библиотеки, но мне это не подходит.


Ответы (1 шт):

Автор решения: Kavermoki

Я бы предположил, что точно подойдет библиотека simple-term-menu

→ Ссылка