PEP8情報:
models.py:10:80: E501 line too long (83 > 79 characters)
Models.py:
field = TreeForeignKey('self', null=True, blank=True, related_name='abcdefgh')
この行を正しく書く方法は?
それは「正しい」、PEP8は79文字以上の行にフラグを立てるだけです。しかし、あなたがそれを心配しているなら、次のように書くことができます:
field = TreeForeignKey('self',
null=True,
blank=True,
related_name='abcdefgh')
またはこれ:
field = TreeForeignKey(
'self',
null=True,
blank=True,
related_name='abcdefgh',
)
または、実際には、単一行を複数の短い行に分割する他のスタイル。
Autopep8と呼ばれるこのきちんとしたプログラムを見つけました! https://github.com/hhatto/autopep8
pip install autopep8
autopep8 -i models.py
(再帰的に)次のこともできます。
autopep8 -ri package/
Auto PEP8は、コードロジックではなく、ファイルの安全な変更のみを行い、レイアウトの変更のみを行います。
細かく分割するのにあまり便利ではない、とんでもない長い文字列がある場合(Sentry DSN、MIDDLEWAREやINSTALLED_APPSの時折のモジュールなど)、単に# noqa
は行末にあり、リンターはその行を無視します。控えめに使用し、あなたが要求した場合には絶対に使用しないでください。
これは非常に主観的です。厳密にE501をフォローしていた場合、次のように書きます。
field = TreeForeignKey('self',
null=True,
blank=True,
related_name='abcdefgh')
通常、80ではなく100を長すぎると考えます。
私は通常、次のように、元の行よりも1レベル深いインデントのパラメーターを揃えるためにそれを分割します。
field = TreeForeignKey('self', null=True,
blank=True, related_name='abcdefgh')
特にTreeForeignKey
がTreeForeignKeyWithReferencesToSomethingElse
のようなものである場合、すべてのパラメーターは、開き括弧で並べると、ウィンドウの右端から始まります。パラメーターのいずれかがdefaultvalueforcertaincircumstances
のような長い名前を持っている場合、80列未満にすべてを収めることができない場合があります。
field = TreeForeignKeyWithReferencesToSomethingElse('self',
defaultvalueforcertaincircumstances='foo')
また、同じ行に複数の関数パラメーターを配置することを好みます(正しく見えない場合を除いて、私は純粋主義者ではありません!)、垂直方向のスペースが過度に拡大しないようにして、それ以外の場合よりも私のエディター。