Hallo an alle die es interesiert wie man direkt einzelne tasten der tastatur mit python abfrägt
also ohne input()/raw_input() sondern direkt z.b.:wenn ich W drücke schreibe HI oder solange ich W drücke schreibe so oft wie es geht HI etc.
Als erstes definieren wir die Funktion inkey()
Dafür müssen wir sys, termios und tty importiren.
das sieht dann so aus:
Python
#!/usr/bin/python
import sys
import termios
import tty
inkey_buffer = 1
def inkey():
fd=sys.stdin.fileno()
remember_attributes=termios.tcgetattr(fd)
tty.setraw(sys.stdin.fileno())
character=sys.stdin.read(inkey_buffer)
termios.tcsetattr(fd,termios.TCSADRAIN, remember_attributes)
return character
Alles anzeigen
Dann können wir mit der verwendung von inkey anfangen
z.b.:
das schreibt den inhalt der variable key aber nur wenn diese W,A,S oder D enthält
und wenn Q gedrückt wird wird das programm beendet.
eine andere möglichkeit wäre:
Code
while 1:
key = (inkey())
if key == "h" :
print ("Hallo Welt")
else:
print ("Bis Bald Welt")
if key == "q":
exit()
Ich hoffe es geht bei euch wenn nicht antwortet mir einfach.
LG Moritz