Python-uinput is Python interface to the Linux uinput kernel module. It allows you to attach userspace device drivers to the kernel. In practice, this makes it very simple to create virtual joysticks, keyboards, and mice for generating arbitrary input events programmatically.