PEP8 bilgi:Satır çok uzun. Django PEP8
models.py:10:80: E501 line too long (83 > 79 characters)
Models.py:
field = TreeForeignKey('self', null=True, blank=True, related_name='abcdefgh')
Nasıl doğru bu satırı yazmak için?
PEP8 bilgi:Satır çok uzun. Django PEP8
models.py:10:80: E501 line too long (83 > 79 characters)
Models.py:
field = TreeForeignKey('self', null=True, blank=True, related_name='abcdefgh')
Nasıl doğru bu satırı yazmak için?
Bu çok özneldir. Ben kesinlikle E501 aşağıdaki olsaydı ben yazmak istiyorum: Genellikle, 100 çok uzun 80.
http: //www.python.org/dev/peps/pep-0008/# maksimum satır uzunluğu –
@hayden: Bu, Python standart kitaplığı için bir stil kılavuzu. Farklı bir çizgi uzunluğunu tercih etmek gayet iyi. – geoffspear
Özellikle pep8 ... – Wyrmwood
O 79 karakterden uzun PEP8 sadece bayraklar satır uzunluğundadır "doğru" değil düşünün
field = TreeForeignKey('self',
null=True,
blank=True,
related_name='abcdefgh')
. Bu konuda endişeleriniz varsa Ama, bunu şöyle yazabiliriz:
field = TreeForeignKey('self',
null=True,
blank=True,
related_name='abcdefgh')
Ya da bu:
field = TreeForeignKey(
'self',
null=True,
blank=True,
related_name='abcdefgh',
)
Ya gerçekten, birden daha kısa satırlara tek satır kıracak başka stil .
hakkında sorulmamışsa, bu son derece iyi bir örnek. –
@ D.Shawley: Tration virgülleri Python'da gayet iyi. (Genellikle ek argümanlar işleve iletilirse sözdizimi sorunlarından kaçınmak için böyle bir kodlama stili kullanırken onları koyarım.) – mipadi
anahtar kelime ve/veya değişken listesi argümanları kullanıyorsanız bunlar iyi. –
Sadece autopep8 adında bu temiz programı buldum! https://github.com/hhatto/autopep8
pip install autopep8
autopep8 -i models.py
Ayrıca (yinelemeli) yapabilirsiniz:
autopep8 -ri package/
Oto PEP8 yalnızca dosyalar için güvenli değişiklikler, sadece değişen düzen değil, kod mantığı yapar. , TreeForeignKey
TreeForeignKeyWithReferencesToSomethingElse
gibi bir şey Hele
field = TreeForeignKey('self', null=True,
blank=True, related_name='abcdefgh')
bu durumda tüm parametreler için dışarı başlayacak:
Bu çok kullanışlıdır! –
Bu harika! Teşekkür ederim! :) [pylint] (https://www.pylint.org/) ile birlikte kullanıldığında, tam teşekküllü bir IDE kullanmayı neredeyse hiç kaçırmıyorum. – CodingInCircles
Genellikle parametreleri gibi özgün çizgisi daha derin girinti bir seviye, sıraya olduğunu bölünmüş Açılış parantezi ile hepsini dizilmiş olsaydı pencerenin en sağında. parametrelerin herhangi defaultvalueforcertaincircumstances
gibi uzun ismi olsaydı, 80 sütunların altına bütün hepsini sığdırmak mümkün olmayabilir: Ben de tercih
field = TreeForeignKeyWithReferencesToSomethingElse('self',
defaultvalueforcertaincircumstances='foo')
ne zaman dışında (aynı satırda birden işlev parametreleri koymak sadece doğru görünmüyor, ben bir pürist değilim!) böylece dikey alan aşırı derecede genişlemiyor, editörümde başka türlü gerekenden daha fazla zaman harcayacağım.
Birincisi, PEP8 ile gerçekten mutlu değil - [Girinti bölümünde] ilk "Hayır" ı not edin (http://www.python.org/dev/peps/pep-0008/#indentation). –
Parçalara ayırmak için çok uygun olmayan gülünç uzun bir diziniz varsa (Sentry DSNs, MIDDLEWARE veya INSTALLED_APPS'deki geçici modül gibi şeyler hakkında düşünmek), satırın sonuna # noqa
kodunu yazabilirsiniz. Linterler çizgiyi görmezden gelir. İstediğin dava için kesinlikle kullanmayın.
Ben django projeleri için bu özel pep8 kuralını görmezden gelmek adil. [Django bu istisnayı kendisi yapar] (https://docs.djangoproject.com/en/dev/internals/contributing/writing-code/coding-style/). –
Soru iyi ve tüm – Timo
lokalize değil PEP 8 kendisinden unutmayın - "tutarsız ne zaman bilmek - bazen stil rehberi tavsiyeleri sadece geçerli değildir. Şüphe durumunda, en iyi kararınızı kullanın. örnekler ve en iyi neyin göründüğüne karar verin " – 0TTT0