Heim >Backend-Entwicklung >Python-Tutorial >Wie rufe ich Eingaben in Python ab, ohne die Eingabetaste zu drücken?

Wie rufe ich Eingaben in Python ab, ohne die Eingabetaste zu drücken?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-10 00:56:02262Durchsuche

How to Retrieve Input in Python Without Pressing Enter?

Eingabeabruf ohne Drücken der Eingabetaste in Python

Bei Verwendung der raw_input-Funktion in Python müssen Benutzer normalerweise nach der Eingabe einer Eingabe die Eingabetaste drücken Wert. Um diese Anforderung zu beseitigen, können je nach Betriebssystem verschiedene Techniken eingesetzt werden.

Windows

Auf Windows-Systemen stellt das Modul msvcrt die Funktion msvcrt.getch bereit:

import msvcrt

c = msvcrt.getch()
if c.upper() == b'S':
    print('YES')

Diese Funktion liest einen Tastendruck, ohne ihn an die Konsole zurückzugeben, und wartet nicht darauf, dass die Eingabetaste gedrückt wird.

Unix

Für Unix Systeme kann eine einfache Funktion zum Erreichen einer ähnlichen Funktionalität erstellt werden:

def getch():
    import tty, sys
    fd = sys.stdin.fileno()
    old_settings = tty.tcgetattr(fd)
    try:
        tty.setraw(fd)
        ch = sys.stdin.read(1)
    finally:
        tty.tcsetattr(fd, tty.TCSADRAIN, old_settings)
    return ch

c = getch()
if c.upper() == 'S':
    print('YES')

Das obige ist der detaillierte Inhalt vonWie rufe ich Eingaben in Python ab, ohne die Eingabetaste zu drücken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn