Wie unterdrücke ich Zeilenumbrüche in Benutzereingaben mit der Python-Funktion „input()'?

Patricia Arquette
Freigeben: 2024-10-28 04:13:02
Original
869 Leute haben es durchsucht

How to Suppress Newlines in User Input Using Python's `input()` Function?

Zeilenumbrüche in Benutzereingaben mithilfe von Eingabefunktionen unterdrücken

Während Druckanweisungen durch Anhängen eines Kommas daran gehindert werden können, neue Zeilen hinzuzufügen, ist dies mit einer ähnlichen Technik möglich nicht sofort verfügbar für Eingabefunktionen wie raw_input (Python 2.x) oder input (Python 3.x).

Um den Zeilenumbruch nach einer Benutzereingabe zu unterdrücken, kann man die Tatsache nutzen, dass raw_input oder input intrinsisch eine neue Zeile druckt Zeile, bevor Sie eine Eingabe anfordern. Es ist jedoch nicht möglich, das Einfügen dieser anfänglichen neuen Zeile zu verhindern.

Überwindung der Einfügebeschränkung für neue Zeilen

Obwohl es unmöglich ist, die neue Zeile direkt zu unterdrücken, gibt es eine Problemumgehung um nach Erhalt einer Eingabe nahtlos zur vorherigen Zeile zurückzukehren. Bei dieser Technik wird der folgende Code verwendet:

<code class="python">print('3[{}C3[1A'.format(len(x) + y), end='')</code>
Nach dem Login kopieren

wobei:

  • x eine ganze Zahl ist, die die Länge der Benutzereingabe darstellt;
  • y eine ganze Zahl ist, die darstellt die Länge der Eingabeaufforderungszeichenfolge der Eingabefunktion

Erklärung

Die Zeichenfolge „33[4C“ bewegt den Cursor um vier Indizes nach rechts und überschreibt so effektiv die Eingabeaufforderung mit Leerzeichencharakter. In ähnlicher Weise bewegt die Zeichenfolge „33[1A“ den Cursor um eine Zeile nach oben und richtet die Benutzereingabe direkt nach der Eingabeaufforderung aus.

Anwendungsfall

Das folgende Codefragment zeigt dies die praktische Anwendung dieser Technik:

<code class="python">print('Hello, ', end='')
name = input()
print(', how do you do?')</code>
Nach dem Login kopieren

Ergebnis

Hello, Tomas, how do you do?
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie unterdrücke ich Zeilenumbrüche in Benutzereingaben mit der Python-Funktion „input()'?. 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
Neueste Artikel des Autors
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!