python-evdev allows Python programs running in Linux to read and write input events. It provides bindings to both the generic input event interface (evdev) and the userspace input subsystem (Uinput).