Der Dokumentation zufolge sind sie so gut wie austauschbar. Gibt es einen stilistischen Grund für die Verwendung des einen statt des anderen?
Antworten
Zu viele Anzeigen?Der Geschmack Ihres Teams oder die Kodierungsrichtlinien Ihres Projekts.
Wenn Sie in einer mehrsprachigen Umgebung arbeiten, möchten Sie vielleicht die Verwendung der gleichen Art von Anführungszeichen für Zeichenketten fördern, wie sie die andere Sprache verwendet, zum Beispiel. Ansonsten mag ich persönlich am liebsten das Aussehen von '
Ich verwende doppelte Anführungszeichen, weil ich dies seit Jahren in den meisten Sprachen (C++, Java, VB ) tue, außer in Bash, weil ich auch in normalem Text doppelte Anführungszeichen verwende und weil ich eine (modifizierte) nicht-englische Tastatur verwende, bei der beide Zeichen die Umschalttaste erfordern.
'
= "
/
= \
= \\
Beispiel:
f = open('c:\word.txt', 'r')
f = open("c:\word.txt", "r")
f = open("c:/word.txt", "r")
f = open("c:\\\word.txt", "r")
Die Ergebnisse sind die gleichen
\=>> Nein, das ist nicht dasselbe. Ein einzelner Backslash trennt Zeichen. Sie haben in diesem Beispiel einfach Glück, denn \k
y \w
sind keine gültigen Escapes wie \t
o \n
o \\
o \"
Wenn Sie einzelne Backslashes verwenden möchten (und diese als solche interpretiert werden), müssen Sie eine "rohe" Zeichenkette verwenden. Sie können dies tun, indem Sie ein ' r
' vor der Zeichenkette
im_raw = r'c:\temp.txt'
non_raw = 'c:\\temp.txt'
another_way = 'c:/temp.txt'
Was Pfade in Windows betrifft, werden Schrägstriche auf die gleiche Weise interpretiert. Die Zeichenkette selbst ist jedoch eindeutig anders. Ich würde jedoch nicht garantieren, dass sie auf einem externen Gerät auf diese Weise gehandhabt werden.
- See previous answers
- Weitere Antworten anzeigen