Python - tolle Sprache krankes Styleguide

Alles, was nicht direkt mit Python-Problemen zu tun hat. Dies ist auch der perfekte Platz für Jobangebote.
Benutzeravatar
snafu
User
Beiträge: 6834
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Auch ich schließe mich an: Das "Problem" ist im Grunde rein theoretischer Natur. Niemand, der einigermaßen lesbaren Code schreiben will, würde innerhalb desselben Quelltextes mal 2, mal 3, mal 4 Leerzeichen für seine Einrückungen nehmen. Man stellt sich das normalerweise einmal im Editor ein und gut ist. Möchte man sich nicht an PEP8 halten (warum auch immer), kann man ja ruhig durchgängig mit 2 Leerzeichen oder mit 8 Zeichen langen Tabs arbeiten. Da zwingt einem Python nichts auf.

Die Einrückungspflicht der Programmiersprache als Manko anzulasten, halte ich für verfehlt. Dann müsste man auch anderen Sprachen anlasten, dass sie Semikolons und Braces erzwingen. Irgendwie muss dem Parser halt deutlich gemacht werden, auf welcher Stufe bestimmte Codeteile stehen und wann eine Zeile endet. Ich finde, gerade hier vereinfacht Python sogar vieles: Die genannten Sachen fallen ja nicht komplett weg, sondern sind freiwillig. Ich kann Semikolons nutzen, um mehrere Zeilen in eine zu quetschen und ich kann Klammern verwenden, um beispielsweise Funktionen mit vielen Argumenten übersichtlicher zu gestalten (eine "Zeile" ist für Python erst dann vorbei, wenn die schließende Klammer kommt).

Im Grunde ist das also alles viel weniger Zwang als du vermutest. ;)
Benutzeravatar
Defnull
User
Beiträge: 778
Registriert: Donnerstag 18. Juni 2009, 22:09
Wohnort: Göttingen
Kontaktdaten:

snafu hat geschrieben:Ich kann Semikolons nutzen, um mehrere Zeilen in eine zu quetschen
Witzig, ich bin nun schon seit Jahren aktiver Python Entwickler, aber das ist mir neu :|
Ein deutliches Zeichen dafür, das man sowas eigentlich nicht braucht.
Benutzeravatar
snafu
User
Beiträge: 6834
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Es gibt hier ein paar engagierte Codegolfer. Die brauchen das z.B. ;)
BlackJack

Wenn man das Zeilenendezeichen mitzählt, dann sind zwei Zeilen genauso "teuer" wie zwei Anweisungen durch ein Semikolon getrennt. Gewinn bringt das also erst, wenn man mehrere Anweisungen in einem eingerückten Block hat.
Antworten