Leere Zeile Python PEP8 best practice in class definition
Ich immer lassen Sie eine Leerzeile nach der definition der Klasse, und der code scheint zu sein, PEP8-konform, da keine Warnung ausgelöst. Ich mache dies, weil ich fand es besser lesbar als das schreiben alle zusammen.
class Area(BaseModel):
name = models.CharField(_("Name"), max_length=30)
slug = models.SlugField(_("Slug"), max_length=30, unique=True)
class Meta(BaseModel.Meta):
verbose_name = _("Area")
verbose_name_plural = _("Areas")
ordering = [
"name",
]
Allerdings, wenn ich lese, PEP8-code-kompatibel. Dieser zusätzliche Platz ist nie da und der code würde wie folgt Aussehen:
class Area(BaseModel):
name = models.CharField(_("Name"), max_length=30)
slug = models.SlugField(_("Slug"), max_length=30, unique=True)
class Meta(BaseModel.Meta):
verbose_name = _("Area")
verbose_name_plural = _("Areas")
ordering = [
"name",
]
Meine Frage ist: Ist das eine "schlechte Praxis", was ich Tue. Sollte ich dies vermeiden, zusätzliche leere Zeilen in Python?
Nun, für Vorspeisen, haben Sie keine doctext. So wie ich es, wenn mein doctext ist nur 1 Zeile, die ich nicht eine leere Zeile. Wenn die doctext ist mehrzeilig, dann habe ich eine leere Zeile hinzufügen.
also, wenn Sie nicht doctext oder es hat nur eine Zeile, dann müssen Sie nicht lassen Sie eine Leerzeile. Anderen, haben Sie eine leere Zeile. Gibt es irgendeine Konvention? Ich habe schon gesehen, was Sie sagen.
also, wenn Sie nicht doctext oder es hat nur eine Zeile, dann müssen Sie nicht lassen Sie eine Leerzeile. Anderen, haben Sie eine leere Zeile. Gibt es irgendeine Konvention? Ich habe schon gesehen, was Sie sagen.
InformationsquelleAutor Caumons | 2013-06-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist wirklich eine Frage des Geschmacks. Ich persönlich gehören die Leerzeile zu werden, Bestand darin, mit Klassen, die einen docstring. Zitieren PEP-0257:
Zur Veranschaulichung:
Der PEP zeigt kein Beispiel eines
class
definition, nur die Funktionen 🙁Beim Umgang mit Funktionen und Methoden, lassen Sie leere Zeilen, wenn mit docstrings? Wie es heißt, in
all docstrings
...Beachten Sie, dass die PEP-0257 scheint sich verändert zu haben. Der Bereich "; für die Symmetrie, setzen Sie eine Leerzeile zwischen dem header-Klasse und der docstring." wurde gelöscht.
href="https://hg.python.org/peps/rev/9b715d8246db" >hg.python.org/peps/rev/9b715d8246db
InformationsquelleAutor icecrime
Da verstehe ich die Leerzeile Abschnitt des PEP-8, es gibt eine gewisse Freiheit in dieser Frage. Leere Zeilen erscheinen in einigen Orten (Trennung von Gruppen von verwandten Funktionen) und kann weggelassen werden, in anderen Orten (der Gruppe eine Liste von one-liners).
Gibt es keine Freiheit, aber über leere Zeilen nach der definition der Kopfzeilen. Sollten Sie nicht erscheinen, in übereinstimmung mit den PEP-8 Regeln.
Ihre PEP-8 compliance checker kann nicht scheinen, um dies zu überprüfen, aber.
In der Regel (nicht PEP-8-bezogen), habe ich das Gefühl, dass leere Zeilen, wie viele andere Probleme mit der Formatierung, ist eine Frage, was man gewohnt ist. Es gibt keine wissenschaftlichen Untersuchungen, die ich kenne, die zeigen, dass die Formatierung funktioniert am besten auf unvoreingenommene Entwickler. Und die meisten von uns sind sowieso voreingenommen, so dass auch dies würde wahrscheinlich bedeuten, nicht sehr viel.
Beim Bearbeiten vorhandener code, meine wichtigste Ansatz ist immer, stick an die vorhandene Formatierung. Aber das ist neben dem Punkt hier 😉
InformationsquelleAutor Alfe