Seite 1 von 1

Multiline string interpretation

Verfasst: Donnerstag 28. Juni 2007, 08:14
von Zap
Hallo zusammen, ich hab mich schon seit längeren gefragt ob es nicht eine
elegantere Lösung gibt multiline strings in tieferen Verschachtelungsebenen einzubetten.
Ich rede von Multiline Strings die im Quellcode beim beginn einer neuen Zeile nicht immer wieder
an Position 1 beginnen müssen und deren führenden Leerzeichen bis zur
Einrückung automatisch ignoriert werden.
Eben so wie man es von Docstrings kennt.
Ich finde nämlich Gebilde wie diese sehr unschön (nur so als Beispiel):

Code: Alles auswählen

class AnyClass:
    ...
    def any_function(self):
        for i in self.something_iterable:
            if i:
                assert i.bla is not None and i.foo, \
"""Irgend eine wichtige information bzgl des aufgetretenen Fehlers 
der etwas umfangreicher ausfällt"""
    ...
   
Geht sowas auch anders? Ohne das man mit " " + \ " " arbeitet oder einen Modulglobalen string dafür anlegt? Bei den DocStrings funktioniert die Interpretation richtig, man kann diese ja problemlos als eingerückte Blocks schreiben.

Die einzige Information die ich bisher dazu gefunden habe ist diese:
http://www.python.org/dev/peps/pep-0295/

Verfasst: Donnerstag 28. Juni 2007, 08:24
von jens
Schau mal hier: [wiki]Multiline-Strings[/wiki]

Verfasst: Donnerstag 28. Juni 2007, 08:44
von Zap
*ups* :roll:
Ok, warum das www durchwühlen wenn sowas hier im Wiki steht?!

Das mit den zusammengesetzten Literalen in einer Klammer finde ich ganz ok.

Danke Jens ;)

Verfasst: Donnerstag 28. Juni 2007, 08:45
von jens
Jup. So wie im letzten Beispiel auf der Wiki Seite mache ich es auch immer.