Détecter les frappes en python (tty)

J'ai fait la même chose avec termios la dernière fois, mais je l'ai aussi essayé avec tty. [Dernière fois] http://qiita.com/tortuepin/items/9ede6ca603ddc74f91ba

import sys
import termios
import tty

#Obtenir un descripteur de fichier d'entrée standard
fd = sys.stdin.fileno()

#Obtenez les attributs de terminal de fd
old = termios.tcgetattr(fd)

try:
    #Changer de mode d'entrée standard
    #Cbreak et raw n'ont pas besoin d'entrer, mais raw est ctrl-c ne peut pas être entendu??
    tty.setcbreak(sys.stdin.fileno())
    #tty.setraw(sys.stdin.fileno())
    ch = sys.stdin.read(1)
    
finally:
    #Restaurer les attributs de fd
    termios.tcsetattr(fd, termios.TCSANOW, old)

print(ch)

Celui-ci a moins de liberté que la dernière fois, mais c'est plus facile.

Différence entre cbreak et raw

https://utcc.utoronto.ca/~cks/space/blog/unix/CBreakAndRaw

Recommended Posts

Détecter les frappes en python (tty)
Détecter les frappes en Python (sans Entrée)
Quadtree en Python --2
Python en optimisation
CURL en Python
Géocodage en python
SendKeys en Python
Méta-analyse en Python
Unittest en Python
Époque en Python
Discord en Python
Allemand en Python
DCI en Python
tri rapide en python
nCr en python
N-Gram en Python
Programmation avec Python
Plink en Python
Constante en Python
FizzBuzz en Python
Sqlite en Python
Étape AIC en Python
LINE-Bot [0] en Python
CSV en Python
Réflexion en Python
Constante en Python
nCr en Python.
format en python
Scons en Python 3
Puyopuyo en python
python dans virtualenv
PPAP en Python
Quad-tree en Python
Réflexion en Python
Chimie avec Python
Hashable en Python
DirectLiNGAM en Python
LiNGAM en Python
Aplatir en Python
Aplatir en python
Obtenir des frappes lors de l'exécution en arrière-plan en Python (Windows)
Détecter le graphique boursier Golden Cross avec Python
Liste triée en Python
AtCoder # 36 quotidien avec Python
Texte de cluster en Python
AtCoder # 2 tous les jours avec Python
Daily AtCoder # 32 en Python
Daily AtCoder # 6 en Python
Daily AtCoder # 18 en Python
Modifier les polices en Python
Motif singleton en Python
Lire DXF avec python
Daily AtCoder # 53 en Python
Utilisez config.ini avec Python
Daily AtCoder # 33 en Python
Résoudre ABC168D en Python
Distribution logistique en Python
AtCoder # 7 tous les jours avec Python
Décomposition LU en Python
Une doublure en Python