Ich habe gerade einen Job begonnen, bei dem ich Python schreibe, nachdem ich aus einem Java-Hintergrund gekommen bin, und ich bemerke, dass andere Entwickler dazu neigen, Zeichenfolgen in einfachen Anführungszeichen ( ''
) anstatt in doppelten Anführungszeichen ( ""
) zu zitieren . Zum Beispiel:
line1 = 'This is how strings typically look.'
line2 = "Not like this."
Gibt es einen besonderen Grund für diese andere als persönliche Präferenz? Ist dies der richtige Weg, um Zeichenfolgen zu zitieren? Insbesondere möchte ich wissen, ob es eine Art von Standard oder bewährten Verfahren gibt, die diesen Codierungsstil bestimmen.
python
coding-style
coding-standards
Eric Hydrick
quelle
quelle
Ruby
, es tatsächlich ist ein technischer Unterschied zwischen einfachen und doppelten Anführungszeichen. Doppelte Anführungszeichen unterstützen die Interpolation von Zeichenfolgen - einfache Anführungszeichen werden als Literale analysiert.Antworten:
Die anderen Antworten sind insofern richtig, als sie keinen technischen Unterschied machen, aber ich habe bei einigen Open-Source-Projekten eine informelle Stilregel gesehen: Doppelte Anführungszeichen werden für Zeichenfolgen verwendet, die möglicherweise für den Benutzer sichtbar sind (unabhängig davon, ob sie benötigt werden oder nicht) Übersetzung) und einfache Anführungszeichen stehen für Zeichenfolgen, die sich auf die Funktionalität des Codes selbst beziehen (z. B. diktierte Schlüssel, reguläre Ausdrücke, SQL).
Dies ist sicherlich keine universelle Regel (oder sogar in einem PEP kodifiziert), so dass es wie bei jedem anderen beliebigen Aspekt der Kodierung auf lokale Regeln ankommt.
Beachten Sie, dass in PEP 8 (das mir beim Schreiben dieser Antwort nicht aufgefallen war) Folgendes steht :
Wie ein Kommentator betont, ist dies nicht unbedingt ein Widerspruch, je nachdem, wie Sie "Regel" interpretieren. Was ich vorschlage, funktioniert jedoch nicht wirklich mit der zweiten Hälfte des Zitats.
quelle
Es ist sehr einfach:
Am besten verwenden Sie Pythonic
'
(einfache Anführungszeichen), bis Sie doppelte Anführungszeichen benötigen.Das folgende Zitat stammt direkt aus der Dokumentation zu String-Literalen.
quelle
Aus technischer Sicht macht es keinen Unterschied, aus stilistischer Sicht ein paar Gedanken:
bar = '"It\'s awesome" he said.'
bar = "\"It's awesome\" he said."
quelle
Es gibt keinen Unterschied zwischen der Verwendung von einfachen und doppelten Anführungszeichen in Python. In der Praxis können Sie je nach Art der Daten, mit denen Sie arbeiten, den einen oder anderen Stil bequemer finden.
Die Art der Anführungszeichen, die "standardmäßig" verwendet werden (wo es keinen zwingenden Grund gibt, das eine oder das andere zu verwenden), ist so ziemlich eine Frage der persönlichen Präferenz.
Weitere Informationen finden Sie im Abschnitt zu String-Literalen in der Python-Dokumentation.
quelle
Einige Dinge, die Sie berücksichtigen sollten, wenn Sie sich angewöhnen, regelmäßig einfache oder doppelte Anführungszeichen zu verwenden.
Doppelte Anführungszeichen erfordern die Eingabe mit zwei Fingern. und daher wahrscheinlicher für Tippfehler sowie eine Geschwindigkeitsabnahme
Ihr Editor zeigt möglicherweise einen Charakter besser als einen anderen. für ein einfacheres visuelles Syntax-Debugging.
Docstrings verwenden dreifache Zeichen: Was sieht besser aus? """""" oder ''''''
Obwohl ich dies unter Windows nicht gesehen habe, können einige Syntax- oder Dokumentationstools doppelte Anführungszeichen erwarten.
Bei den meisten Python-Tutorials sehe ich das Gegenteil Ihrer Erfahrung. Ich sehe normalerweise doppelte Anführungszeichen.
quelle
Meiner Meinung nach bevorzuge ich die doppelten Anführungszeichen für eine Zeichenfolge.
Warum? Für Programmierer anderer Sprachen lässt sich der Code schneller anpassen und leichter verstehen.
Wenn ein C-Programmierer sieht:
Wird zögern, anstatt:
quelle