Официальный гид Python стиль – Pep8 Отказ ЛИНТЕРЫ, такие как Pycodestyle или Flake8 Можно показать вам, если, согласно PEP8, ваш код хорошо отформатирован или нет.
Проблема в том, что эти инструменты только Сообщить о проблемах И позвольте бремению разработчикам их исправить! Черный С другой стороны не только сообщают о ошибках, но и сделать необходимые изменения делая тебя более продуктивным.
Чтобы процитировать проект Readme:
Черный – это бескомпромиссная форма Python код. Используя его, вы соглашаетесь сдавать контроль над минуцией форматирования вручную. Взамен, черный дает вам скорость, детерминизм, и свобода от пикодестала, охватывающего форматирование. Вы сэкономите время и умственную энергию для более важных вопросов.
Черный требует Python 3.6.0+ и устанавливается с помощью PIP:
pip install black
Черный не сделан, чтобы быть высоко настраиваемым, поэтому он так же просто, как:
black
Это переформатирует ваш код, используя Черный кодовый стиль Что представляет собой подмножество PEP8 (за исключением длины строки по умолчанию: черный – 88, Pep8 – 79, используйте Black -l 79
Если это важно для вас).
Например, если вы пишете следующее преувеличенное test.py
:
def add( a, b ): return a+b def concatenate( s1, s2 ): return '{}+{}'.format( s1, s2 ) if __name__ == '__main__': print( add( 2, 3 ) ) print( concatenate( 'two', 'three' ) )
Вы можете использовать Black Test.py
Чтобы изменить test.py
к:
def add(a, b): return a + b def concatenate(s1, s2): return "{}+{}".format(s1, s2) if __name__ == "__main__": print(add(2, 3)) print(concatenate("two", "three"))
Черный может быть использован во многих редакторах, таких как Vim, Emacs, VSCode, Atom … Есть некоторые полезные функции, такие как Run Black на сохранении.
Посмотрите на Документация Для полного списка поддерживаемых редакторов и как настроить.
черный
Команда также может быть использована в качестве линта. Может быть полезно обеспечить качество кода и согласованность в общий репозиторий с несколькими авторами.
Чтобы проверить форматирование кода Использование:
black --check .
Вы также можете показать, что нужно сделать с помощью - Дейфф
вариант:
black --check --diff .
Теперь вам просто нужно будет добавить это как шаг к конфигурации CI (так же, как вы будете использовать Flake8).
Вы также можете добавить предварительный коммитский крюк, чтобы убедиться, что ваши коммиты не содержат неформатированного кода:
- Установите предварительный коммит:
pip install pre-commit
- Добавьте
.Pre-Compad-config.yaml
к вашему проекту:
repos: - repo: https://github.com/psf/black rev: stable hooks: - id: black language_version: python3.6
- Установите крюк:
pre-commit install
Теперь, если вы попытаетесь совершить неправильно отформатированные файлы, вы получите ошибку:
git commit -m "test" black....................................................................Failed hookid: black Files were modified by this hook. Additional output: reformatted test.py 1 file reformatted.
Если вам нравится черный, просто займите несколько секунд до Звезда Проект на Github Отказ
Вы также можете показать, что вы используете черный Codestyle в своем проекте, добавив значок в своем readme.md:
[](https://github.com/psf/black)
Оригинал: “https://dev.to/notsag/python-code-formatting-using-black-2fe1”