Как сказать анализу стиля Spyder PEP8 читать из setup.cfg или увеличить макс. длина строки?

Я использую Spyder 2.3.1 и python(x, y).

В настройках Spyder вы можете активировать «Анализ стиля». Это неплохо, но я хочу увеличить макс. допустимая длина строки. Стандартная настройка для PEP8 — 79 символов. Это можно изменить через setup.cfg с содержимым:

[pep8]
max-line-length = 99

Это можно прочитать здесь: http://pep8.readthedocs.org/en/latest/intro.html#related-tools

Куда мне поместить файл setup.cfg, чтобы Spyder/PEP8 распознал мой новый лимит? Или есть другой способ установить этот лимит или игнорировать E501 (длинная строка)? Просто установка «Показывать вертикальную линию после 99 символов» в Spyder не помогает.


person venti    schedule 17.10.2014    source источник


Ответы (6)


Согласно ссылке, процитированной @Werner:

http://pep8.readthedocs.org/en/latest/intro.html#configuration

вам нужно создать файл с именем ~/.config/pep8 (в Linux/Mac) или ~/.pep8 (в Windows) и добавить в него следующие строки:

[pep8]
max-line-length = 99

Я протестировал его в Spyder, и он работает так, как ожидалось.

person Carlos Cordoba    schedule 18.10.2014
comment
Спасибо. Сначала у меня были некоторые проблемы с этим ответом, и я хочу поделиться некоторой помощью: A) Где находится ~/ под Windows: я нашел его с окном консоли: cd /d %HOMEDRIVE%%HOMEPATH% B) Как создать файл с именем, которое начинается с .dot в Windows: невозможно использовать проводник для этого, попробуйте echo test ›.pep8 Это создаст файл с именем .pep8 См. ссылка - person venti; 31.10.2014
comment
и ссылка на домашний каталог - person venti; 31.10.2014
comment
Это действительно некрасиво! Если вы хотите, мы можем включить опцию в Spyder (в настоящее время я его обслуживающий персонал), чтобы изменить этот параметр pep8 через нашу панель настроек. Просто откройте задачу в нашем системе отслеживания ошибок, чтобы мы не забыли это в будущем выпуске :-) - person Carlos Cordoba; 31.10.2014
comment
У меня есть несколько других программ, которые устанавливают переменную среды HOME, поэтому, чтобы найти папку, которую Spyder считает моей домашней, я сделал import os; os.path.expanduser('~') в Spyder. - person Justin Harris; 17.05.2015
comment
после обновления до spyder 3.2.3 это больше не работает. Альтернативный подход — изменить жестко заданное MAX_LINE_LENGTH=79 в pycodestyle.py. - person Stian; 22.09.2017
comment
@Stian Это кажется уродливым и неинтуитивным. Нет ли другого способа сделать это? - person Derek; 08.04.2018
comment
В Spyder 2.3.8 под Ubuntu 14.04 этот параметр не имеет значения, когда я запускаю статический анализ кода (F8). Что еще нужно изменить? - person Derek; 08.04.2018
comment
(Я также попробовал подход из pep8.readthedocs.io/en/latest/intro. html#configuration, но это тоже не работает.) - person Derek; 08.04.2018
comment
Запуск Spyder 3.3.6 на Mac, и я не могу это реализовать. Кто-нибудь здесь может успешно реализовать это? - person Raul Torres; 07.11.2019

Вдохновленный комментарием Мина, я смог выполнить эту работу для spyder 3.8, выполнив следующие действия. Узнайте каталог ~ с помощью

import os; os.path.expanduser('~')

(см. примечание Джастина Харриса)

Затем добавьте в каталог ~ файл с именем .pycodestyle, содержащий:

[pycodestyle]
max-line-length = 99

(см. ответ Карлоса Кордовы)

Перезапустите spyder [EDIT: судя по комментариям ниже, это не нужно]. На самом деле это просто объединение большинства приведенных выше замечаний и ответов.

person Goosebumps    schedule 30.03.2018
comment
Более полный ответ о том, что обсуждалось в «принятом ответе». Мне даже не пришлось перезапускать spyder, и это сработало. - person Spcogg the second; 29.07.2018
comment
См. этот ответ для другого места. - person Ivan; 21.10.2019

Если вы являетесь пользователем «myname», используя conda, в среде «myenv» попробуйте отредактировать файл: /home/myname/miniconda3/envs/myenv/lib/python3.7/site-packages/pycodestyle.py и изменить MAX_LINE_LENGTH=79 например, до MAX_LINE_LENGTH=100. Работал на моем Spyder 3.3.6.

person Paulo Polito    schedule 05.06.2020

Ссылки на "pep8" устарели. Пакет был переименован в «pycodestyle».

person Minh Ha-Duong    schedule 12.12.2017

Подойдет tox.ini с разделом pep8 или setup.cfg на уровне проекта.

http://pep8.readthedocs.org/en/latest/intro.html#configuration

person Werner    schedule 17.10.2014

используя Spyder 4.0.0.dev0, перешел к моему ~/.config/spyder.ini, убедился, что мое приложение spyder не запущено, измените значение словаря «maxLineLength»: 100 с «maxLineLength»: 79.

Запустил мое приложение, и теперь оно работает, если вы отредактируете файл во время работы вашего приложения spyder после закрытия, оно перезапишет то, что когда-либо было в файле ~/.config/spyder.ini.

Убедитесь, что он не запущен, и внесите необходимые изменения.

person zadstofun    schedule 23.02.2019