Enter bei input() python?
hallo,
ich schreibe gerade ein Programm, bei dem man eine mehrzeilige Eingabe einlesen muss und danach das Programm ausführt. Prinzipiell soll Python \n nicht als ende der eingabe sehen.
Ist das möglich?
3 Antworten
Es ist zumindest über die Standardeingabe nicht möglich. Ich glaube mit NCurses oder einer ähnlichen Lib ists möglich, immerhin machen das die Editoren Nano, Vim etc. genau so.
Ja, natürlich ist das möglich.
Welche Szenario ist Dir am liebsten?
- Du wiederholst input() in einer Schleife, bis eine Eingabe zum Abbruch führt
- Du liest einfach aus stdin, definierst eine Abbruchbedingung, normal wäre hier EOF.
- Du liest eine festgelegte Anzahl an Zeilen ein
Nun ist es an Dir zu entscheiden, was Du umstzen möchtest.
Na ja, irgendwie muss Python ja auch erkennen, wann die Eingabe zu Ende ist.
Du könntest z.B. in einer Endlosschleife den aktuellen Input einer Liste hinzufügen und - sobald der Nutzer ein von dir festgelegtes Zeichen/Wort eingibt, beendest du die Schleife und gehst in die Ausführung deiner anderen Funktionen über.
Alternativ könntest du nach jeder Eingabe den Nutzer fragen, ob er weitere Eingaben machen möchte