Wat is de E128 van PEP8: voortzettingsregel onder-ingesprongen voor visuele inspringing?

Ik heb net een bestand geopend met Sublime Text (met Sublime Linter) en zag een PEP8-opmaakfout die ik nog nooit eerder had gezien. Hier is de tekst:

urlpatterns = patterns('',
    url(r'^$', listing, name='investment-listing'),
)

Het markeert het tweede argument, de regel die begint met url(...)

Ik stond op het punt deze controle in ST2 uit te schakelen, maar Ik wil graag weten wat ik verkeerd doevoordat ik het negeer. Je weet maar nooit, als het belangrijk lijkt, zou ik zelfs mijn manieren kunnen veranderen 🙂


Antwoord 1, autoriteit 100%

PEP-8 raadt aanom regels tussen haakjes te laten inspringen als je iets op de eerste regel zet, moet het ofwel inspringen op de openingshaak:

urlpatterns = patterns('',
                       url(r'^$', listing, name='investment-listing'))

of geen argumenten op de startregel zetten en dan inspringen tot een uniform niveau:

urlpatterns = patterns(
    '',
    url(r'^$', listing, name='investment-listing'),
)
urlpatterns = patterns(
    '', url(r'^$', listing, name='investment-listing'))

Ik raad aan om PEP-8 eens door te lezen – je kunt er veel doorheen bladeren en het is vrij eenvoudig te begrijpen, in tegenstelling tot sommige van de meer technische PEP’s.


Antwoord 2, autoriteit 3%

Dit geldt ook voor uitspraken als deze (automatisch opgemaakt door PyCharm):

   return combine_sample_generators(sample_generators['train']), \
           combine_sample_generators(sample_generators['dev']), \
           combine_sample_generators(sample_generators['test'])

Wat dezelfde stijlwaarschuwing geeft. Om er vanaf te komen moest ik het herschrijven naar:

   return \
        combine_sample_generators(sample_generators['train']), \
        combine_sample_generators(sample_generators['dev']), \
        combine_sample_generators(sample_generators['test'])

Other episodes