Ich würde gerne Empfehlungen zu impliziten Linienverbindungen im Vergleich zu expliziten Linienverbindungen in Python erhalten.
Bevorzugen Sie insbesondere eine Form gegenüber der anderen? Was empfehlen Sie als allgemeine Standardeinstellung? Welche Kriterien haben Sie, um eines über das andere zu wählen, und wenn Sie eines bevorzugen, wann machen Sie Ausnahmen für das andere?
Ich habe eine Antwort auf diese Frage im Sinn, die meine eigenen Vorurteile widerspiegelt, aber bevor ich meine eigene Antwort poste, möchte ich wissen, was andere denken ... und ob Sie bessere Kriterien haben können als ich vorhabe, dann werde ich deine Antwort auf jeden Fall über meine eigene annehmen.
Einige der Empfehlungen können in anderen Programmiersprachen auf diese Auswahl verallgemeinert werden, aber meine eigene Tendenz ist in Python aufgrund einiger sprachspezifischer Funktionen etwas stärker, sodass ich sowohl die allgemeinen als auch die Python-zentrierten Überlegungen kennen möchte habe zu diesem Thema.
Für einige Hintergrundinformationen fand die Diskussion um eine bestimmte Frage zum Stapelüberlauf statt , aber ich hielt es für angemessener, die Diskussion als Frage hierher zu verschieben, um zu vermeiden, dass die Antwort auf SO mit dieser Tangente überladen wird , da sie vom Thema abweicht die ursprüngliche Frage. Sie können sich diese Frage und ihre Antworten für die Beispielcode-Schnipsel ansehen, die die Diskussion in Gang gebracht haben.
Hier ist ein vereinfachtes Beispiel:
join_type = "explicit"
a = "%s line joining" \
% (join_type)
# versus
join_type = "implicit"
b = ("%s line joining"
% (join_type))
Antworten:
Es gibt ein Dokument im Codierungsstil namens PEP8. Es wird davon abgeraten,
\<NL>
Klammern zu verwenden.Volltext: http://www.python.org/dev/peps/pep-0008/ (Abschnitt Codelayout)
Es ist nicht obligatorisch, definiert jedoch akzeptable bewährte Methoden, die besonders nützlich sind, wenn Sie mehrere Python-Committer in Ihrem Team haben.
quelle
Ich tendiere dazu, implizite Linienverknüpfungen zu verwenden, weil ich sie besser lesbar finde und die Unterstützung durch die Redakteure in Bezug auf das Einrücken und Hervorheben des gesamten Ausdrucks dank der Übereinstimmung in Klammern normalerweise besser ist.
quelle
Derzeit würde ich es vorziehen
B-))
.
Ich bevorzuge das Verbinden expliziter Linien, weil ich die Unordnung der Parens am Ende der Ausdrücke nicht mag.
Aber ich mag das implizite Verbinden von Linien, um die Breite zu verringern, die beim Schreiben eines Strings benötigt wird.
In einigen Fällen ist es mir dann peinlich, die beiden Möglichkeiten nicht zu vermischen
quelle