03
Май
2020

При режиме записи ‘w’ данные некорректно записываются в файл

Режим записи 'a'

Код:

def print_pressed_keys(e):
    with open('key_records.txt', 'a', encoding='utf-8') as f:
        f.write(f'{e.name, e.scan_code, e.event_type, }\n')



keyboard.hook(print_pressed_keys)
keyboard.wait('Ctrl+Shift')

Ввод:mmmmmmmmmqqqqqq

В файле:

('m', 50, 'down')
('m', 50, 'up')
('m', 50, 'down')
('m', 50, 'up')
('m', 50, 'down')
('m', 50, 'up')

и т.д.

Режим записи 'w'

Код:

def print_pressed_keys(e):
   with open('key_records.txt', 'w', encoding='utf-8') as f:
       f.write(f'{e.name, e.scan_code, e.event_type, }\n')

   keyboard.hook(print_pressed_keys)
   keyboard.wait('Ctrl+Shift')

Ввод:qwqwqwa

В файле ('a', 30, 'up')**

Почему так происходит?

P.S Windows 7

Источник: https://ru.stackoverflow.com/questions/1119560/%D0%9F%D1%80%D0%B8-%D1%80%D0%B5%D0%B6%D0%B8%D0%BC%D0%B5-%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D0%B8-w-%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5-%D0%BD%D0%B5%D0%BA%D0%BE%D1%80%D1%80%D0%B5%D0%BA%D1%82%D0%BD%D0%BE-%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D1%8B%D0%B2%D0%B0%D1%8E%D1%82%D1%81%D1%8F-%D0%B2-%D1%84%D0%B0%D0%B9%D0%BB

Тебе может это понравится...

Добавить комментарий