[PYTHON]

Einführung

Der bekannteste Codierungsstandard für Python ist der Standard-Bibliothekscode-Standard PEP 8, aber [Google Python Style Guide](https: /) /google.github.io/styleguide/). Deshalb habe ich versucht zusammenzufassen, wie sich Google Style von PEP 8 unterscheidet. Aus der Schlussfolgerung war es fast dasselbe wie PEP 8, daher habe ich die allgemeinen Regeln (insbesondere Leerzeilen und Leerzeichen) weggelassen. Obwohl es Unterschiede gibt, kann es einige Punkte geben, die nicht behandelt werden können, aber bitte verzeihen Sie mir.

Hinweis

――Beide japanischen Übersetzungen sind verfügbar, aber möglicherweise nicht die neuesten. Deshalb habe ich mich so weit wie möglich auf die englische Version bezogen. --PEP 8 ist gemeinfrei, Google Style Guide ist CC by 3.0

Vergleichstabelle

Artikel PEP8 Google
Schreiben Sie mehrere Sätze in eine Zeile Sollte grundsätzlich aufhören if foo: bar(foo)Istelseを伴わなければOK。それ以外IstNG。;Nicht auch benutzen.
Maximale Länge einer Zeile 79 Zeichen 80 Zeichen
Maximale Länge einer Zeilenausnahme 99 Zeichen sind mit Zustimmung des Teams akzeptabel, 72 Zeichen in der Kommentarzeile sowieso Ausnahmen beim Importieren von Anweisungen, URLs und Pfadnamen
Leitungsfortsetzung\ Klammern sind vorzuziehen,withSätze undassertKann in usw. verwendet werden. withNicht verwenden, es sei denn, die Anweisung enthält 3 oder mehr Zeilen
Verwendung von Docstring non-Nicht erforderlich für öffentliche Methoden, schreiben Sie andere non-Schreiben Sie außer für öffentliche, kurze und offensichtliche Methoden
Dokumentstring-Stil Keine (Der in PEP257 zu schreibende Inhalt wird beschrieben) Ja
Inhalt des Kommentars Schreibe keine offensichtlichen Dinge Erklären Sie nicht den Code selbst, sondern folgen Sie der englischen Grammatik, Rechtschreibung und Zeichensetzung
Zeichenfolgenzitate'``" beides funktioniert Entscheiden Sie, welche im Projekt verwendet werden soll
Mehrzeilige Zeichenfolge (ohne Dokumentzeichenfolge) Bei Verwendung von dreifachen Anführungszeichen""" Prinzip an der Schnur'In dem Projekt, das sich für die Verwendung entschieden hat'''Aber es ist okay. Es gibt auch Verweise auf andere Schreibstile
TODO-Kommentarstil Keiner Ja
Importauftrag Standardbibliothek-> externe Bibliothek-> lokale Bibliothek Fast das gleiche wie PEP8, jedoch klar in lexikalischer Reihenfolge angegeben
1 Zeichenvariable l, O, IVerbot 原則Verbot。例外はカウンタ・イテレータのietc,exceptIme, Des Dateiobjektsf
Hin und her_Benennung _xxx, __xxx, xxx_Erwähnen Sie den Fall der Verwendung Wenn nicht öffentlich_xxx__xxxIst veraltet
Lambda-Stil Wenn Sie einer Variablen zuweisendefSchreiben ワンライナー用に使え。Lambda-Stil部分が60-Verwenden Sie die verschachtelte Funktion, wenn sie 80 Zeichen überschreitet.operatorモジュールにある関数をLambda-Stilで書くな
return Wenn Sie es verwenden, geben Sie in jedem Fall zurück, schreiben Sie etwas nach der Rückgabe Nicht erwähnenswert
Konsistenz Diejenigen, die zu speziell über ihre Herzen sind, sind eng Seien Sie konsequent

Schreiben beim Verbinden von Zeilen mit Klammern

#OK mit PEP8 oder Google
#An offenen Klammern ausrichten
 foo = long_function_name(var_one, var_two,
                          var_three, var_four)
 meal = (spam,
         beans)
#OK mit PEP8 oder Google
#hängender Einzug (4 Leerzeichen)
foo = long_function_name(
    var_one, var_two, var_three,
    var_four)
meal = (
    spam,
    beans)

#Erlaubt für PEP8, NG für Google (2 Leerzeichen)
foo = long_function_name(
  var_one, var_two,
  var_three, var_four)

#Nicht erwähnt in PEP8, OK in Google
foo = {
    long_dictionary_key: value1 +
                         value2,
    ...
}
foo = {
    long_dictionary_key:
        long_dictionary_value,
        ...
}

#Keine Erwähnung in PEP8, NG in Google
foo = {
    long_dictionary_key:
    long_dictionary_value,
    ...
}

#OK für PEP8, keine Erwähnung für Google?
def long_function_name(
        var_one, var_two, var_three,
        var_four):
    print(var_one)


#OK in PEP8, nicht in Google erwähnt, vielleicht NG
my_list = [
    1, 2, 3,
    4, 5, 6,
    ]
result = some_function_that_takes_arguments(
    'a', 'b', 'c',
    'd', 'e', 'f',
    )

#Ich denke, Google mag diesen Schreibstil. PEP8 ist auch in Ordnung.
my_list = [
    1, 2, 3,
    4, 5, 6,
]
result = some_function_that_takes_arguments(
    'a', 'b', 'c',
    'd', 'e', 'f')

Andere Dinge, die nur im Google Style Guide erwähnt werden

Impressionen

Google, schreibe das gleiche wie PEP 8 orz, es war schwer alles zu lesen. Es war gut, dass ich mich entschieden habe, wie man Docstring schreibt und Annotationen sehr detailliert eingibt.

Recommended Posts