Simple module permettant de récupérer les touches de clavier pressées.
J'ai créée un langage de programmation, Callect, et j'avais besoin de récupérer les touches de clavier pressées pour mon event keypress.
J'ai trouvée des solutions, mais soit elle été trop complexe, soit trop volumineuse (Tkinter, Pygame, pynput, curses, ...).
Je suis tombée sur ce poste, qui permettait de faire ce que je voulais, mais le code n'est pas optimisé et assez désordonné.
J'ai du coup, à partir du code présent dans le poste, fait un module simple, léger, propre, pour juste capturer les touches pressées.
Les fonctions ci-dessous sont bloquantes.
Attention, si vous utilisez plusieurs thread dans votre programme, et que dans l'un vous utilisez ces fonctions et dans l'autre vous utilisez input (ou sys.stdin) en même temps, cela peut ne pas fonctionner correctement.
Renvoie la touche pressée brute.
Cela ne gère pas les touches faite en plusieurs caractères.
import keypress
if keypress.getKey() == '\t':
print('Vous avez pressée la touche de tabulation !')
if keypress.getKey() == '\xe0':
if keypress.getKey() == 'H':
print('Vous avez pressée la touche flèche du haut !')Renvoie le nom de la touche pressée.
import keypress
if keypress.getName() == 'Tab':
print('Vous avez pressée la touche de tabulation !')
if keypress.getName() == 'Up':
print('Vous avez pressée la touche flèche du haut !')| Touche | Description |
|---|---|
a-z |
Toute les touches de a à z minuscule. |
A-Z |
Toute les touches de A à Z majuscule. |
0-9 |
Tout les chiffres de 0 à 9 |
\w |
Toute les touche basique (é, {, -, @, ...) |
Ctrl+[a-z] |
Toute les combinaisons Ctrl + a à z. |
AltGr+[a-z] |
Toute les combinaisons Alt Gr + a à z. |
F1-F12 |
Toutes les touches fonction de F1 à F12 |
Escape |
Touche échappe |
Return |
Touche entrée |
Up |
Touche flèche du haut |
Down |
Touche flèche du bas |
Left |
Touche flèche de gauche |
Right |
Touche flèche de droite |
Tab |
Touche tabulation |
Delete |
Touche Suppr |
Insert |
Touche Inser |
Begin |
Touche Début |
End |
Touche Fin |
PageUp |
Remonte d'une page |
PageDown |
Descend d'une page |
BackSpace |
Touche supprimer (flèche vers la gauche) |