Vene4ka
@Vene4ka
Учусь программировать :>

Как заменить название клавиши?

Привет, пишу скрипт на питоне, такой себе логгер нажатий.
Столкнулся с проблеймой, что всякие спец. символы по типу пробела записываются в лог как Key.Space и т.д.
Мне нужно, что бы возвращалось название "Пробел" или "Стрелочка вверх" и т.д.

Код:
import pynput.keyboard 
from pynput.keyboard import Key
log = "" # Создаю переменную, в которую буду записывать всё, что печатает пользователь.
f = open('keylog.txt', 'a', buffering=1)
def process_key_press(key):
    global log;
    log = log + str(key) #Логируем всё что пишет юзер в переменную log
    array = str(log).split("'"); # Разделяем по симбволу << ' >> 
    clear_log = ''.join(array);
    print(clear_log);

    if key == Key.space:
        print('Нажат пробел')
        f.write(str(clear_log) + "\n");
        f.flush()
        log = ""
    if key == Key.esc:
        return False
        
keyboard_listener = pynput.keyboard.Listener(on_press=process_key_press)
with keyboard_listener:
    keyboard_listener.join()
  • Вопрос задан
  • 37 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Cominta
Начинающий программист
key = key.replace("Key.Space", "Пробел")
Оно будет заменять "Key.Space" на "Пробел"
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы