[Python-de] Re: Code Style Review
Stefan Schwarzer <[email protected]>
| Newsgroups | gmane.comp.python.general.german |
|---|---|
| Message-ID | <[email protected]> |
On 2022-11-28 16:37, [email protected] wrote: > Die Frage ist, warum du solche PyLint Ausnahmen ("# pylint:") definiert > hast. IMHO benötigt man dafür einen wirklich triftigen Grund; eine > strenge Indikation. Die Hinweise und Meldungen von Lintern haben ihre > Berechtigung und sollten nicht unterdrück werden. Ich sehe das nicht ganz so streng. Linter-Ausgaben sind für mich eher Hinweise/Empfehlungen; letztlich sollte der/die AutorIn des Codes entscheiden, was davon wie umgesetzt wird. > Neben den Lintern würde ich dir noch empfehlen, ein paar mehr Leerzeilen > zu machen. Das erhöht IMHO die Lesbarkeit, gerade bei verschachtelten > Strukturen. Natürlich ist das Geschmacksache bzw. eine Frage des > Team-Konsent. Z.B. hier: > > Am 28.11.2022 16:19 schrieb Marc Haber: > >> while True: >> time.sleep(30) >> if debug > 0: >> print('run evaluate() and cleanup_table() from main loop') >> cleanup_table() >> if debug > 0: >> print_table() >> evaluate() > > while True: > > time.sleep(30) > > if debug > 0: > print('run evaluate() and cleanup_table() from main loop') > > cleanup_table() > > if debug > 0: > print_table() > > evaluate() Sinnigerweise sehe ich das umgekehrt, das heißt, ich finde, was die Verwendung von Leerzeilen angeht, die erste Variante lesbarer. :-) Oder spezieller kann man sagen, dass zwar die Lesbarkeit _lokal_ geringfügig verbessert wird, aber durch vermehrtes Scrollen im Code die Lesbarkeit _global_ eher schlechter wird. Die "großzügige" Einrückung von vier Leerzeichen pro Einrückungs-Ebene in Python macht es eigentlich relativ leicht, logische Strukturen zu erkennen, auch ohne die Leerzeilen. Zum Thema Leerzeilen innerhalb von Funktionen und Methoden sollte man sich als Autor ruhig fragen, was man damit bezweckt. Ich habe schon manches Mal Code in einer Methode gesehen, der mit Leerzeilen in Blöcke aufgeteilt wurde, - aber ich hatte keine Ahnung, warum die Blöcke so aufgeteilt waren wie sie waren und fand das dadurch eher verwirrend. Noch ein Tipp, den ich selbst zu beherzigen versuche: Immer, wenn ich Leerzeilen zur Gruppierung innerhalb von Funktionen einfügen würde, schreibe ich stattdessen einen Code-Kommentar, der den Code-Block zusammenfasst. Man kann natürlich trotzdem oberhalb des Zusammenfassungs-Kommentars noch eine Leerzeile einfügen, aber ich mache es normalerweise nicht. Zum Thema Kommentare siehe auch https://sschwarzer.com/download/comments_pycon_de2019.pdf :-) Viele Grüße Stefan _______________________________________________ python-de Mailingliste -- [email protected] Zur Abmeldung von dieser Mailingliste senden Sie eine Nachricht an [email protected] https://mail.python.org/mailman3/lists/python-de.python.org/ Mitgliedsadresse: [email protected]