Wie kann ich in Python Standardwerte für Benutzereingaben mit Bearbeitungsfunktionen bereitstellen?

DDD
Freigeben: 2024-10-27 05:33:03
Original
793 Leute haben es durchsucht

How to Provide Default Values for User Input with Editing Capabilities in Python?

Bearbeiten von Eingaben mit Standardwerten in Python

Beim Akzeptieren von Benutzereingaben mit der Funktion input() ist es oft wünschenswert, einen Standardwert bereitzustellen das als Platzhalter oder Ausgangspunkt dient. In diesem Fall möchte ein Benutzer Eingaben für einen Ordnernamen mit dem Standardwert „Download“ akzeptieren, dem Benutzer jedoch ermöglichen, ihn einfach durch Hinzufügen oder Entfernen von Zeichen zu bearbeiten.

Die Standardeingabe() und raw_input( )-Funktionen unterstützen dieses Verhalten standardmäßig nicht. Auf Linux-Systemen bietet jedoch das Readline-Modul eine Lösung.

Readline verwenden

Das Readline-Modul bietet erweiterte Zeilenbearbeitungsfunktionen. Durch die Definition einer benutzerdefinierten Eingabefunktion, die readline verwendet, können Sie das gewünschte Verhalten erreichen. Hier ist ein Beispiel:

<code class="python">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()</code>
Nach dem Login kopieren

In dieser Funktion:

  • rlinput(prompt, prefill) akzeptiert eine Eingabeaufforderung und einen optionalen Vorfüllwert.
  • readline.set_startup_hook legt einen Startup-Hook fest, der den Prefill-Wert in die Eingabeaufforderung einfügt.
  • input oder raw_input wird verwendet, um Benutzereingaben zu akzeptieren und die Bearbeitung des Prefills zu ermöglichen.
  • Der „finally“-Block setzt den Startup-Hook auf seinen Wert zurück Standardverhalten.

Verwendung

Um diese Funktion zu verwenden, ersetzen Sie einfach den Standardaufruf input() durch die Funktion rlinput():

<code class="python">folder = rlinput('Folder name: ', 'Download')</code>
Nach dem Login kopieren

Dadurch wird die Eingabeaufforderung „Ordnername: Download“ mit dem vorab ausgefüllten Text „Download“ angezeigt. Wenn der Benutzer die Eingabetaste drückt, ohne Änderungen vorzunehmen, wird der Standardwert als „Download“ gespeichert. Wenn der Benutzer die Standardeinstellung bearbeiten möchte, kann er den vorab ausgefüllten Text einfach überschreiben oder Zeichen hinzufügen.

Das obige ist der detaillierte Inhalt vonWie kann ich in Python Standardwerte für Benutzereingaben mit Bearbeitungsfunktionen bereitstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!