Die japanische Version von PEP8 befindet sich unter der folgenden URL https://pep8-ja.readthedocs.io/ja/latest/#id4 Obwohl es geschrieben steht, kann ich lange Sätze nicht gut lesen, also habe ich es auf meine eigene Weise zusammengefasst. Ich habe versucht, ein oder zwei Sätze pro Thema zusammenzufassen, aber es ist immer noch lang, deshalb teile ich den Artikel mehrmals auf. Beispielcode ist auch für den Inhalt enthalten, der als schwierig zu erklären eingestuft wurde, indem nur Buchstaben verwendet wurden. Bitte kommentieren Sie, wenn Sie die Bedeutung zusammengefasst und geändert haben.
Fügen Sie für jeden Einzug vier Leerzeichen ein.
Platz ist vorzuziehen. In Python3 wird beim Mischen von Tabulatoren und Leerzeichen im Einzug eine Fehlermeldung angezeigt.
Begrenzen Sie die Länge aller Zeilen auf maximal 79 Zeichen.
Solange es vereinheitlicht ist, spielt es keine Rolle, ob die Zeile vor oder nach dem Binäroperator unterbrochen wird. Ausdrücke in Absätzen werden immer nach binären oder relationalen Operatoren unterbrochen, strukturierte Ausdrücke sollten jedoch immer vor binären Operatoren unterbrochen werden.
Gutes Beispiel: Einfach zuzuordnende Operatoren und Operanden
income = (gross_wages
+ taxable_interest
+ (dividends - qualified_dividends)
- ira_deduction
- student_loan_interest)
Schlechtes Beispiel: Der Operator ist vom Operanden getrennt
income = (gross_wages +
taxable_interest +
(dividends - qualified_dividends) -
ira_deduction -
student_loan_interest)
Lassen Sie zwei Zeilen für jede Funktions- oder Klassendefinition. Die Definition der Funktion in der Klasse wird zeilenweise getrennt.
Sie sollten immer UTF-8 verwenden. import Die import-Anweisung sollte normalerweise zeilengetrennt sein.
Gutes Beispiel
import sys
import os
schlechtes Beispiel
import sys,os
In den folgenden Fällen ist dies jedoch in Ordnung
from subprocess import Popen, PIPE
__all__,__author__,__version__
Doppelte Unterstrichvariablen auf Modulebene, wie sie vor der import-Anweisung geschrieben wurden
Die in einfache Anführungszeichen eingeschlossene Zeichenfolge und die in doppelte Anführungszeichen eingeschlossene Zeichenfolge sind identisch. Es spielt keine Rolle, welches Sie verwenden, solange es einheitlich ist.
Gutes Beispiel:
spam(ham[1], {eggs: 2})
schlechtes Beispiel:
spam( ham[ 1 ], { eggs: 2 } )
Gutes Beispiel:
if x == 4: print x, y; x, y = y, x
schlechtes Beispiel:
if x == 4 : print x , y ; x , y = y , x
Gutes Beispiel:
spam(1)
schlechtes Beispiel:
spam (1)
Gutes Beispiel:
dct['key'] = lst[index]
schlechtes Beispiel:
dct ['key'] = lst [index]
Gutes Beispiel:
x = 1
y = 2
long_variable = 3
schlechtes Beispiel:
x = 1
y = 2
long_variable = 3
Gutes Beispiel:
def complex(real, imag=0.0):
return magic(r=real, i=imag)
schlechtes Beispiel:
def complex(real, imag = 0.0):
return magic(r = real, i = imag)
Gutes Beispiel:
def munge(input: AnyStr): ...
def munge() -> AnyStr: ...
schlechtes Beispiel:
def munge(input:AnyStr): ...
def munge()->PosInt: ...
Gutes Beispiel:
def munge(sep: AnyStr = None): ...
schlechtes Beispiel:
def munge(input: AnyStr=None): ...
Gutes Beispiel:
if foo == 'blah':
do_blah_thing()
do_one()
do_two()
do_three()
schlechtes Beispiel:
if foo == 'blah': do_blah_thing()
do_one(); do_two(); do_three()
Recommended Posts