Подтвердить что ты не робот

Проверка PEP8 в коде ноутбука iPython

Есть ли простой способ проверить, что код ноутбука iPython, когда он написан, совместим с PEP8?

4b9b3361

Ответ 1

Если это кому-то помогает, я использую:

conttest "jupyter nbconvert notebook.ipynb --stdout --to script | flake8 - --ignore=W391"

  • conttest повторы при сохранении изменений в записной книжке
  • flake8 - сообщает flake8 принимать данные от stdin
  • --ignore=W391 - это потому, что вывод jupyter nbconvert, кажется, всегда имеет "пустую строку в конце файла", поэтому я не хочу, чтобы flake8 жаловался на это.

У меня проблема с ячейками уценки (длина строк может быть довольно длинной): игнорировать ячейки markdown в` jupyter nbconvert` с `--to script `.

Ответ 2

Убедитесь, что у вас есть модуль pycodestyle или flake8, чтобы иметь возможность проверить ваш код в соответствии с руководствами по стилю. Затем включите магическую функцию с помощью модуля pycodestyle_magic (github repo):

pip install pycodestyle flake8 pycodestyle_magic
  • сначала загрузите магию в ячейку Jupyter Notebook:

%load_ext pycodestyle_magic

  • и затем включите магию, чтобы выполнить проверку соответствия для каждой ячейки, используя:

%pycodestyle_on или %flake8_on

в зависимости от того, какой стиль руководства вы хотите проверить.

enter image description here

Чтобы отключить запуск автоматической проверки соответствия:

%pycodestyle_off или %flake8_off

Ответ 3

Установите расширение pep8 для ноутбука ipython, используя следующую команду:

%install_ext https://raw.githubusercontent.com/SiggyF/notebooks/master/pep8_magic.py

Обратитесь к официальным документам для получения дополнительной информации.

После этого используйте функцию %%pep8 Cell magic, чтобы проверить вашу конкретную ячейку для стиля pep8.

Обратите внимание, что это должно быть помещено в каждую ячейку, для которой необходимо выполнить проверку pep8.

Обратитесь к этому примеру.