J'essaie de mettre correctement en retrait le code suivant:
RULES_LIST = [
('Name1', 1, 'Long string upto 40 chars'),
('Name2', 2, 'Long string upto 40 chars'),
('Name3', 3, 'Long string upto 40 chars'),
('Name4', 4, 'Long string upto 40 chars'),
('Name5', 5, 'Long string upto 40 chars'),
('Name6', 6, 'Long string upto 40 chars'),
('Name7', 7, 'Long string upto 40 chars'),
('Name8', 8, 'Long string upto 40 chars')
]
Pylint se plaint Wrong hanging indentation.
pour le code ci-dessus, et PEP8 se plaint E121: under-indented for hanging indent
.
Un correctif possible pour pylint le change en:
RULES_LIST = [\
('Name1', 1, 'Long string upto 40 chars'),
...
('Name8', 8, 'Long string upto 40 chars')]
mais PEP8 se plaint E121 and E502
PEP8: 1.5.7 (configuration par défaut)
Pylint: 1.3.0 (configuration par défaut)
Python: 2.7.5 (fonctionnant sous OSX 10.9.3)
La liste peut s'allonger. Quelqu'un peut-il suggérer une indentation appropriée pour cela?
Vous utilisez des tabulations au lieu de quatre espaces.
Ces trois possibilités sont correctes, si vous utilisez quatre espaces au lieu de tabulations:
RULES_LIST = [('Name1', 1, 'Long string upto 40 chars'),
('Name2', 2, 'Long string upto 40 chars'),
('Name3', 3, 'Long string upto 40 chars'),
('Name4', 4, 'Long string upto 40 chars'),
('Name5', 5, 'Long string upto 40 chars'),
('Name6', 6, 'Long string upto 40 chars'),
('Name7', 7, 'Long string upto 40 chars'),
('Name8', 8, 'Long string upto 40 chars')]
RULES_LIST = [
('Name1', 1, 'Long string upto 40 chars'),
('Name2', 2, 'Long string upto 40 chars'),
('Name3', 3, 'Long string upto 40 chars'),
('Name4', 4, 'Long string upto 40 chars'),
('Name5', 5, 'Long string upto 40 chars'),
('Name6', 6, 'Long string upto 40 chars'),
('Name7', 7, 'Long string upto 40 chars'),
('Name8', 8, 'Long string upto 40 chars')]
RULES_LIST = [
('Name1', 1, 'Long string upto 40 chars'),
('Name2', 2, 'Long string upto 40 chars'),
('Name3', 3, 'Long string upto 40 chars'),
('Name4', 4, 'Long string upto 40 chars'),
('Name5', 5, 'Long string upto 40 chars'),
('Name6', 6, 'Long string upto 40 chars'),
('Name7', 7, 'Long string upto 40 chars'),
('Name8', 8, 'Long string upto 40 chars')
]
Si vous souhaitez continuer à utiliser les onglets, vous pouvez modifier les paramètres suivants dans le fichier .pylintrc:
indent-string='\t'
indent-after-paren=1
Si vous modifiez uniquement le premier, pylint s'attendra à ce que quatre onglets soient utilisés pour l'indentation.