717 Stimmen

Einfache Anführungszeichen vs. doppelte Anführungszeichen in Python

Der Dokumentation zufolge sind sie so gut wie austauschbar. Gibt es einen stilistischen Grund für die Verwendung des einen statt des anderen?

2voto

Mike Punkte 3523

Das ist wahrscheinlich eher eine stilistische Vorliebe. Ich habe gerade PEP 8 überprüft und keinen Hinweis auf einfache oder doppelte Anführungszeichen gefunden.

Ich bevorzuge einfache Anführungszeichen, weil es nur ein Tastendruck ist, anstatt zwei. Das heißt, ich muss nicht die Umschalttaste drücken, um einfache Anführungszeichen zu setzen.

2voto

Peterino Punkte 12374

In Perl sollten Sie einfache Anführungszeichen verwenden, wenn Sie eine Zeichenkette haben, die keine Interpolation von Variablen oder escapeten Zeichen wie \n , \t , \r , usw.

PHP macht den gleichen Unterschied wie Perl: Inhalte in einfachen Anführungszeichen werden nicht interpretiert (auch nicht \n umgewandelt werden), im Gegensatz zu doppelten Anführungszeichen, die Variablen enthalten können, deren Wert ausgedruckt werden soll.

Python nicht, fürchte ich. Technisch gesehen gibt es in Python kein $-Token (oder ähnliches), um einen Namen/Text von einer Variablen zu trennen. Beide Funktionen machen Python lesbarer und weniger verwirrend. Einfache und doppelte Anführungszeichen können in Python austauschbar verwendet werden.

1voto

Andrew Dalke Punkte 14207

Ich habe mich für die Verwendung von doppelten Anführungszeichen entschieden, weil sie leichter zu erkennen sind.

1voto

Ich verwende einfach das, worauf ich gerade Lust habe; es ist praktisch, dass ich nach Lust und Laune zwischen den beiden wechseln kann!

Wenn man natürlich Characetrs zitiert, ist der Wechsel zwischen den beiden vielleicht doch nicht so skurril...

0voto

Asclepius Punkte 48774

Ich möchte sowohl die Pixel als auch die Überraschung minimieren. Ich bevorzuge in der Regel ' um Pixel zu minimieren, aber " wenn die Zeichenkette ein Hochkomma enthält, um wiederum die Anzahl der Pixel zu verringern. Für einen Docstring bevorzuge ich jedoch """ über ''' weil letzteres nicht standardisiert, ungewöhnlich und daher überraschend ist. Wenn ich nun einen Haufen von Zeichenketten habe, bei denen ich " nach der obigen Logik, sondern auch eine, die mit einem ' kann ich noch verwenden " um die Konsistenz zu wahren, sondern nur, um die Überraschung zu minimieren.

Vielleicht hilft es, sich die Philosophie der Pixelminimierung folgendermaßen vorzustellen. Wäre es Ihnen lieber, wenn englische Schriftzeichen wie folgt aussehen würden A B C o AA BB CC ? Bei der letzteren Variante werden 50 % der nicht leeren Pixel verschwendet.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X