Ich arbeite an dieser Python-Aufgabe, die ich nicht herausfinden kann. Es ist die letzte von 3 Funktionen und die ersten 2 waren viel einfacher zu programmieren als diese. Die Anweisungen sind "Gegeben eine Nachricht, die mehrere Zeilen enthalten kann, verwenden Sie die Funktion split(), um die einzelnen Zeilen und die Funktion format() zu identifizieren, so dass beim Drucken ein Feld um die Zeilen der Nachricht, alle zentriert verwendet vertikale Balken & Bindestriche an den Seiten (|, -), + in den Ecken (+), und es gibt immer eine Spalte mit Leerzeichen links und rechts von der breitesten Zeile der Nachricht. "Zeichnungskasten um Nachricht
Einige Beispiele für das, was diese Funktion tun muss:
Test, dass: border_msg ('a') == ‚+ --- + \ n | a | \ n + --- + \ n '
Testen Sie Folgendes: border_msg (' hallo ') ==' + ------- + \ n | hallo | \ n + ------- + \ n '
Testen Sie das: border_msg ("hi! \ nwie bist du? \ ndrive sicher!") ==' + -------- ------- + \ n | Hallo! | \ n | wie gehts? | \ n | sicher fahren! | \ n + --------------- + \ n '
Ich denke, es muss die obigen Tests drucken, so dass die Wörter in der Mitte von der "+ - ---- + auf der Ober- und Unterseite und „|“. 's an den Seiten
hier ist der Code, den ich so weit habe ich nicht sicher bin, wo ich von hier aus gehen würde
def border_msg(msg):
border_msg.split("\n")
'%s'.format(msg)
return border_msg(msg)
print border_msg(msg)
..
fix Einzug. Und was ist mit unendlicher Rekursion? –
Nur die Einrückung behoben und wenn Sie über die Rückkehr sprechen dann bin ich nur nicht sicher, welche zu verwenden Ich denke, könnte entweder – famguy74
Famguy74: @ Jean-François Fabre spricht über die Tatsache, dass Ihre 'border_msg()' Funktion ruft sich bedingungslos auf (wird also nie zurückkehren). – martineau