Angepasste Trennlinie
Verfasst: Samstag 18. April 2020, 14:01
Hallo Zusammen,
ich wollte insbesondere Neulinge (ich ebenso) eine Methode vorstellen mit der man Zeilen beim Konsolendesign sparen kann.
Mich störte es wenn im Code selbst zu viele künstliche Trennzeichen (s. Beispiel 1) sind wie "====" "---" "><<><><>" etc. deshalb habe ich mir eine Funktion zusammengebastelt, die anhand der Länge die optimale Länge der Trennzeichen übernimmt.
Problembeispiel
Mein Lösungsweg mit Strings
Beispiel mit einem String, der erstmal formatiert und nicht ausgegeben wird:
dann berechnen wir die Länge des Strings:
und dann nehmen wir die Zeichenlänge des Strings und printen jedes mal ein "=" solange die maximale Länge nicht erreicht wurde. Zusätzlich entfernen wir das Escape Zeichen \n um ein Zeilenumbruch zu verhinden. Im else-Zweig der for Schleife fügen wir dann den formatierten output String in die print FUnktion ein
Ausgabe:
Mit Listen
Ebenso geht das mit Listen:
Erstmal wird der längste String in der Liste ermittelt:
und danach entsprechende Trennzeichen passgenau hinzugefügt:
Ausgabe:
Wenn man dann sich hierzu eine eigene Funktion zusammenbastelt kann man langfristig bei Konsolenanwendungen Tipparbeit sparen und die Übersichtlichkeit des Programmiercodes verbessern. =)
ich wollte insbesondere Neulinge (ich ebenso) eine Methode vorstellen mit der man Zeilen beim Konsolendesign sparen kann.
Mich störte es wenn im Code selbst zu viele künstliche Trennzeichen (s. Beispiel 1) sind wie "====" "---" "><<><><>" etc. deshalb habe ich mir eine Funktion zusammengebastelt, die anhand der Länge die optimale Länge der Trennzeichen übernimmt.
Problembeispiel
Code: Alles auswählen
print("==========================")
print("Das Ergebnis")
print("==========================")
Mein Lösungsweg mit Strings
Beispiel mit einem String, der erstmal formatiert und nicht ausgegeben wird:
Code: Alles auswählen
rechnungs_betrag = 13.99
output = ("Hallo, die Rechnung liegt bei " + str(rechnungs_betrag) + " EUR")
Code: Alles auswählen
output_length = len(output)
Code: Alles auswählen
for char in range(0, output_length):
print("=", end="")
else:
print(output)
Code: Alles auswählen
=======================================
Hallo, die Rechnung liegt bei 13,99 EUR
Ebenso geht das mit Listen:
Code: Alles auswählen
output = ["Menü", "(N)eues Spiel starten", "(L)evel festlegen", "(B)eenden"]
Code: Alles auswählen
for char in output:
if len(char) > max_length:
max_length = len(char)
Code: Alles auswählen
for i in range(0, max_length):
print("=", end="")
else:
print()
print(output)
Code: Alles auswählen
=====================
Menü
(N)eues Spiel starten
(L)evel festlegen
(B)eenden