Anpassen von Standardwerten für Eingaben in Python
In Python können Sie mit dem Standardeingabebefehl (input()) Benutzereingaben erfassen. Möglicherweise möchten Sie jedoch einen Standardwert bereitstellen, den der Benutzer bearbeiten oder akzeptieren kann.
Überraschenderweise fehlt den Standardeingabefunktionen input() und raw_input() diese Funktion. Hier ist eine Lösung, die das Readline-Modul nutzt.
Das Readline-Modul
Wenn Sie in einer Linux-Umgebung arbeiten, können Sie das Readline-Modul verwenden, um eine benutzerdefinierte zu erstellen Eingabefunktion. Das Readline-Modul bietet Zeilenbearbeitung und ermöglicht Ihnen, das Eingabefeld vorab auszufüllen.
Definieren einer benutzerdefinierten Eingabefunktion
So können Sie eine benutzerdefinierte Eingabefunktion definieren, die eine benötigt Eingabeaufforderung und einen optionalen Vorabfüllwert:
import readline
def rlinput(prompt, prefill=''):
readline.set_startup_hook(lambda: readline.insert_text(prefill))
try:
return input(prompt) # or raw_input in Python 2
finally:
readline.set_startup_hook()
Verwendung
Um diese benutzerdefinierte Eingabefunktion zu verwenden, rufen Sie sie einfach so auf:
folder_name = rlinput('Folder name: ', 'Downloads')
Dieser Code zeigt eine Eingabeaufforderung an, in der Sie nach einem Ordnernamen gefragt werden. Im Eingabefeld wird zunächst „Downloads“ angezeigt und der Benutzer kann es bearbeiten oder die Eingabetaste drücken, um die Standardeinstellung zu akzeptieren.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3