2016-01-18 1 views
3

Quel est le indention correct pour ce scénario:Quel est le indention correct pour pep8 sur de longues lignes avec liste d'arguments et l'affectation

class StorageType(models.Model): 
    """ Defining a general typ of storage """ 

    name = models.CharField(
      max_length=50, 
      help_text=_("The name for a storage type. Should be unique") 
     ) 

pep8 se plaint avec

../models.py:68:13: E126 continuation line over-indented for hanging indent 
../models.py:70:9: E121 continuation line under-indented for hanging indent 
+0

Pourquoi ne pas consulter [PEP 8] (https://www.python.org/dev/peps/pep-0008/) lui-même? Notez que le programme 'pep8' (qui n'est pas approuvé par les développeurs officiels de Python) est plus rigide que les directives PEP 8 actuelles. –

+0

En fait, je l'ai fait, mais ce qui précède était l'extrait que je comprenais. Je dois donc admettre qu'il y a un potentiel de mon côté - au moins en le lisant/en le comprenant. – frlan

Répondre

4

Je ne sais pas à propos de la "correcte", mais voici mon préféré qui passe pep8 chèque:

name = models.CharField(
    max_length=50, 
    help_text=_("The name for a storage type. Should be unique") 
) 
3

C'est une correcte indentation:

class StorageType(models.Model): 
    """ Defining a general typ of storage """ 

    name = models.CharField(
     max_length=50, 
     help_text=_("The name for a storage type. Should be unique") 
     ) 
+3

Ceci est * une * indentation correcte. Je n'utilise pas le programme 'pep8', mais le guide de style actuel dans [PEP 8] (https://www.python.org/dev/peps/pep-0008/) indique que le paren de fermeture peut correspondre à ligne d'ouverture (identique à 'name =') ou aux lignes indentées (ce que vous avez montré ici). –

+0

@JohnY mis à jour! – gtlambert