Ich bin neu in Python und ich weiß, Sie „+“ verwenden Strings verketten wie folgt aus:Verketten von Zeichenfolgen mit Leerzeichen?
'foo' + 'bar'
Heute habe ich über einige Code kam, wo es Strings mit Leerzeichen (Vertiefungen) [Update zu verketten scheint : falsches Beispiel siehe Edit 2 unter]:
SQL = "select col1, col2 "
"from table"
ich habe nicht gefunden, diese Funktion in dem Buch erwähnt oder irgendwo im Web lese ich. Kann mir bitte jemand erklären, dass:
- Was bedeutet der Raum in diesem Zusammenhang? Warum funktioniert es?
- Wann bevorzugen Sie Leerzeichen über "+"? Für die Lesbarkeit beim Verketten von Strings über mehrere Zeilen hinweg?
Edit: Vielen Dank für Ihre Antworten. Nachdem ich den Code selbst ausprobiert hatte, funktionierte das nicht. Vermutlich habe ich bei der Betrachtung des Codes einige Details übersehen, bevor ich zur Arbeit ging; also schaue ich morgen nach. Allerdings hat die folgende Arbeit (und das machte mich übernehmen die SQL-Beispiel funktioniert, ohne überprüfen zuerst):
x = "foo" "bar" # "foobar"
Edit 2: Es stellte sich heraus, dass ich ein Paar von Klammern in der SQL-Beispiel oben verpasst. Der eigentliche Code sieht wie folgt aus:
SQL = ("select col1, col2 "
"from table")
Re: 1. Es funktioniert nicht. :) –
Sind Sie sicher, dass der genaue Code war? Werfen Sie einen Blick darauf, es könnte helfen: http://stackoverflow.com/questions/10660435/pythonic-way-to-create-a-long-multi-line-string – Rhexis
Siehe auch http://StackOverflow.com/ Fragen/18842779/Zeichenfolge-Verkettung-ohne-Operator-in-Python, die eine Verknüpfung zu den Dokumenten bezüglich der Regeln um benachbarte Zeichenfolgenliterale hat. –