2016-05-12 12 views
-2

ich diesen Code geschrieben habe, Ausdruck eine neue Zeile zu machen, nachdem ich Eingang in einer Zeile getan m bereitstellt .. so etwas wie diesePython, habe Probleme mit neuer Linie

netM = '' 

while True: 
    line = raw_input() 
    if not line: break 

    netM += '' + line 
    netMs = netM.replace('.', '') 
print("\n" + netMs + " = " + netMs + " or " + netM + "\n") 

Lets sagen, dass ich ein,

Pause.now 

es wird ausgegeben ..

Pausenow = Pausenow or Pause.now 

Aber ich will auf einmal eine Menge von Linien zu tun, so ist es dies tun würde ..

Pausenow = Pausenow or Pause.now 
Pausenow1 = Pausenow1 or Pause.now1 
Pausenow2 = Pausenow2 or Pause.now2 

wenn ich,

Pause.now 
Pause.now1 
Pause.now2 

eingegeben und so weiter.

aber stattdessen tut es das.

pauseNowpauseNow1pauseNow2 = pauseNowpauseNow1pauseNow2 or pause.Nowpause.Now1pause.Now2 
+0

Verschieben Sie Ihre Druckanweisung in die Schleife? –

+0

Dann kann ich nur eine Zeile eingeben. – Nevermind123

+0

Wie findest du das? Versuch es. –

Antwort

1

Dies geschieht, weil raw_input() Eingabe als einzelne Zeichenfolge dauert.

Auch Sie hinzugefügt eingegebene Zeile zu newM Variable für jeden eingegebenen Eingang.Es sollte innerhalb für Schleife sein. Definieren Sie einen anderen Haltepunkt als den Standardwert 'neue Zeile'.

Hier habe ich Haltepunkt als "", d. H. Leere Zeichenfolge. Jetzt wird diese Schleife unterbrochen, wenn Sie eine leere Zeichenfolge eingeben.

breakpoint = "" 
while True: 
    line = raw_input() 
    if line.strip() == breakpoint: 
     break 
    netM = line 
    netMs = netM.replace('.', '') 
    print("\n" + netMs + " = " + netMs + " or " + netM + "\n") 
1

müssen Sie die Zeile für jede Iteration der Schleife drucken sonst halten es neue Linien zu vorherigen anhängt nur Ihre print-Anweisung innerhalb der while-Schleife auch für das gewünschte Ergebnis nicht bewegen Zeilen anhängen in netM Variable

netM = '' 

while True: 
    line = raw_input() 
    if not line: break 

    netM = '' + line 
    netMs = netM.replace('.', '') 
    print(netMs + " = " + netMs + " or " + netM + "\n") 
0

Meiner Meinung nach sollten Sie die einzelnen String an den Hauptstrang (NETM) durch '\n' und drucken Sie die ganze Hauptsaite, einmal geteilt hinzufügen while-Schleife gebrochen ist.

netM = '' 

while True: 
    line = raw_input() 
    if not line: 
      break 

    netMs = line.replace('.', '') 
    netM += netMs + ' = ' + netMs + ' or ' + line + '\n' 

print netM