2017-07-15 4 views
1

Ich versuche, mehrere separate Textzeilen aus einer Funktion mit schöner Formatierung zurückzugeben. Die Art, wie ich es mache, fügt am Ende eine zusätzliche Zeile hinzu, die ich nicht möchte. Wie kann ich das besser formatieren?Mehrere Zeilen ohne eine zusätzliche Leerzeile am Ende formatiert zurückgeben

def myfunction(): 
    mystring = '' 
    for letter in 'cat': 
     mystring += letter + '\n' 
    return mystring 

Gerade jetzt ist die Ausgabe:

c 
a 
t 
<this is a blank line at the end> 

Wie kann ich diese leeren Zeile loszuwerden?

Antwort

2

Wie von @vaultah (in the comments) hingewiesen, sollten Sie str.join statt String-Zusatz verwenden. join kümmert sich auch um die Hinter Newline:

def myfunction(): 
    return '\n'.join('cat') 

Beachten Sie, dass String-Zusatz ist generell eine schlechte Idee, weil es eine Menge von Umschichtungen beinhaltet und viel langsamer als str.join sein kann.

+0

Der Vorschlag war ziemlich trivial, Sie mussten wirklich nicht die Attribution hinzufügen ... – vaultah

Verwandte Themen