Hay más cosas que se pueden hacer con keyboardmodule.
Estos son algunos de los métodos:
Método 1:
Usando la función read_key():
import keyboard
while True:
if keyboard.read_key() == "p":
print("You pressed p")
break
Esto romperá el ciclo cuando pse presione la tecla .
Método # 2:
Función de uso wait:
import keyboard
keyboard.wait("p")
print("You pressed p")
Esperará a que presione py continúe el código mientras se presiona.
Método # 3:
Usando la función on_press_key:
import keyboard
keyboard.on_press_key("p", lambda _:print("You pressed p"))
Necesita una función de devolución de llamada. Lo usé _porque la función del teclado devuelve el evento del teclado a esa función.
Una vez ejecutada, ejecutará la función cuando se presione la tecla. Puede detener todos los ganchos ejecutando esta línea:
keyboard.unhook_all()
Método # 4:
Este método ya ha sido respondido por user8167727 pero no estoy de acuerdo con el código que hicieron. Estará usando la función is_pressedpero de otra manera:
import keyboard
while True:
if keyboard.is_pressed("p"):
print("You pressed p")
break
Romperá el bucle cuando pse presione.
Notas:
keyboard leerá las pulsaciones de teclas de todo el sistema operativo.
keyboard requiere root en linux