Detect in python which keys are pressed

2019-01-06 20:40发布

问题:

I need to know which key is being pressed right now. I'm not looking to capture some specific keys to trigger an event or anything like that,

I want to know which keys are pressed now and display a list of them.

I also need to capture special keys like F1 ... F12, shift, alt, home, windows, etc. Basically all keys on the keyboard.

How do I do this in python? How do I capture keyboard events?

Related

  • Cross platform keylogger
  • Is there a cross-platform python low-level API to capture or generate keyboard events?

EDIT

Just so you know I'm not trying to make a keylogger. I'm trying to make a diagnoses tool (I split water on my laptop and the keyboard is starting to get crazy sometime!!)

回答1:

PyKeylogger mentioned in the related question might do the job.



回答2:

The easiest way to do something like this, if you're not too fussy, is to bring in a GUI toolkit such as pygame or wxPython. For example, run the wxPython Demo, then go to the demo for KeyEvents.



回答3:

I found the answer using a link in a related question to pyHook:

pyHook tutorial: capturing keypress events