Seite 1 von 1
' ' oder " "
Verfasst: Freitag 16. September 2011, 10:26
von gofid
Hi,
hab mal 'ne Stil Frage.
' ' ist ja von der Funktion her das gleiche wie " ". Jetzt wollte ich mal fragen ob es da so eine Art ungeschriebenes Gebot (oder vielleicht ja auch geschriebenes) gibt wann man welches verwendet, da ich schon häufiger gesehen habe das z.B docstrings fast immer in """ """ gesetzt werden und Strings in Klammern eher in ' '. Ist das nur Zufall oder gehört das zum guten Coding Stil?
Gruss Gofid
Re: ' ' oder " "
Verfasst: Freitag 16. September 2011, 10:49
von BlackJack
@gofid: Docstrings in """ zu setzen ist IMHO wirklich eine allgemeine Konvention. Eine Zeit lang hatte das `pydoc`-Modul auch Probleme mit '''-Docstrings. Bei anderen literalen Zeichenketten ist es Geschmackssache. Ich verwende in der Regel ' weil das auch die bevorzugte `repr()`- beziehungsweise `ascii()`-Darstellung von allen mir bekannten Python-Implementierungen ist:
Re: ' ' oder " "
Verfasst: Freitag 16. September 2011, 11:35
von gofid
Ok, danke Dir für die Info.
Re: ' ' oder " "
Verfasst: Freitag 16. September 2011, 11:40
von Trichter
Ich nehme für Docstrings """ und für alles andere ' (außer natürlich bei Sachen in denen ein Apostroph im String vorkommt und ich deshalb " nehmen muss).
Re: ' ' oder " "
Verfasst: Freitag 16. September 2011, 11:52
von CM
... und ich nehme vorzugsweise ", weil das C++-STL-Strings und anderen String-Implementationen in C++ näher kommt - und das die Sprache ist, die mich sonst am häufigsten beschäftigt.
Letzendlich ist das Verwenden von " oder ' wohl eher Geschmackssache - mit den erwähnten Einschränkungen.
Re: ' ' oder " "
Verfasst: Freitag 16. September 2011, 12:49
von jens
Ich nehme " einfach aus Gewohnheit, deswegen kann ich es auch schneller Tippen

Re: ' ' oder " "
Verfasst: Freitag 16. September 2011, 12:56
von gofid
@Trichter
in dem Fall kann man doch auch einfach einen \ vor den Apostroph setzen, oder ist das nicht so gut?
@all
Ich merk schon, da hat jeder seine eigenen Vorlieben. Danke für euren input()
Gruss
Gofid
Re: ' ' oder " "
Verfasst: Freitag 16. September 2011, 13:28
von jbs
' erspart mir das drücken der Shift-Taste
Re: ' ' oder " "
Verfasst: Freitag 16. September 2011, 13:46
von snafu
BlackJack hat geschrieben:Ich verwende in der Regel ' weil das auch die bevorzugte `repr()`- beziehungsweise `ascii()`-Darstellung von allen mir bekannten Python-Implementierungen ist
dito
Re: ' ' oder " "
Verfasst: Freitag 16. September 2011, 13:53
von /me
jens hat geschrieben:Ich nehme " einfach aus Gewohnheit, deswegen kann ich es auch schneller Tippen

Ich nehme ' weil der Bildschirm dann nicht so viel schwarze Farbe verbraucht.

Re: ' ' oder " "
Verfasst: Samstag 17. September 2011, 00:25
von jbs
Ich nehme ' am Anfang und " am Ende, um keinen zu diskriminieren.
Re: ' ' oder " "
Verfasst: Samstag 17. September 2011, 19:11
von Py-Prog
Ich nem immer ' keine Ahnung wieso, vielleicht deswegen weil ich zu faul bin die shift zu drücken, vielleicht weil's mir besser gefällt, ... aber soll jeder für sich selber entscheiden.
Aber mit gutem Stile Hat das nix zu tun.
Re: ' ' oder " "
Verfasst: Sonntag 18. September 2011, 13:33
von Hyperion
jbs hat geschrieben:Ich nehme ' am Anfang und " am Ende, um keinen zu diskriminieren.
Wieso nicht alternierend, um die Gleichberechtigung noch deutlicher auszudrücken

Re: ' ' oder " "
Verfasst: Sonntag 18. September 2011, 15:52
von Barabbas
Mir persönlich fehlen spitze Anführungszeichen (»« und ><). Für Schweizer und Franzosen benötigen wir noch die umgedrehte Variante: «» und <>. Ich denke, wir können in Sachen "Anführungsstriche" noch einiges optimieren. Prinzipiell würde ich vorschlagen, dass nach Shebang und Encoding eine weitere Zeile eingeführt wird, die die Art der Anführungszeichen festlegt. Vielleicht möchte ich ja doppelte, spitze Zeichen am Anfang eines Strings und ein einfaches, normales Anführungszeichen am Ende? Mit dieser Variante könnte man dann auch Strings definieren, die ihrerseits Strings markieren:
# Quoting: asdf,qwertz
Eine gültige Zeichenkette würde dann wie folgt aussehen:
mystring = asdfHallo Benutzer \asdfHeinz\qwertz!qwertz
Auch die Deklaration mehrere solcher Zeichenketten würde sich empfehlen, um unnötiges Escapen zu verhindern:
# Quoting: asdf,qwert,katze,maus
mystring = asdfHallo Benutzer katzeHeinzmaus!qwertz
Ich mach schonmal 'nen Feature Request auf *hust*