Плагин для flake8 и Pylama, который проверяет группировку и порядок импортов Python по выбранному стилю.
PyCQA/flake8
Линтер Python, объединяющий PyFlakes, pycodestyle и McCabe в одной команде и поддерживающий сторонние плагины.
- Звёзды
- 3,833
- Форки
- 364
- Открытые issues
- 24
- Последний коммит
- позавчера
Что это?
Flake8 проверяет исходный код Python на нарушения стиля и проблемы качества. Он запускает PyFlakes для поиска логических ошибок, например неиспользуемых импортов, pycodestyle — для выявления нарушений стиля PEP 8, а McCabe — для оценки сложности кода, после чего объединяет результаты в один отчёт по каждому файлу, сформированный одной командой flake8.
Помимо объединения этих инструментов, Flake8 позволяет выборочно отключать предупреждения. Маркер на уровне файла пропускает файл целиком, комментарий noqa в конце строки отключает проверку этой строки, а noqa с указанием кодов ошибок игнорирует только эти ошибки. Также поддерживаются хуки Git и Mercurial.
Flake8 можно расширять через точки входа flake8.extension и flake8.formatting: с их помощью сторонние плагины добавляют проверки и собственные форматы вывода.
Ключевые возможности
- 01Запускает PyFlakes, pycodestyle и McCabe одной командой.
- 02Объединяет предупреждения в единый вывод по каждому файлу.
- 03Поддерживает отключение проверок на уровне файла и строки с помощью комментариев noqa.
- 04Позволяет отключать отдельные коды ошибок в строке.
- 05Предоставляет хуки Git и Mercurial.
- 06Поддерживает расширение сторонними плагинами через точки входа.
Сценарии использования
- Проверка соответствия стилю PEP 8 и поиск распространённых ошибок в CI-пайплайне проекта на Python.
- Запуск проверок линтера через хук Git перед коммитом.
- Измерение сложности функций и выявление чрезмерно сложных участков кода с помощью McCabe.
- Создание собственных проверок или форматов вывода в виде плагина Flake8.
Быстрый старт
- 1
Следуйте инструкциям по быстрому началу работы, ссылка на которые приведена в README, чтобы установить и запустить Flake8
Что важно знать
- Лицензия не указана явно в метаданных проекта.
В подборках
Темы
Частые вопросы
- Что такое flake8?
- Линтер Python, объединяющий PyFlakes, pycodestyle и McCabe в одной команде и поддерживающий сторонние плагины. Flake8 проверяет исходный код Python на нарушения стиля и проблемы качества. Он запускает PyFlakes для поиска логических ошибок, например неиспользуемых импортов, pycodestyle — для выявления нарушений стиля PEP 8, а McCabe — для оценки сложности кода, после чего объединяет результаты в один отчёт по каждому файлу, сформированный одной командой flake8.
- flake8 можно использовать бесплатно? Какая у него лицензия?
- flake8 распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- flake8 всё ещё поддерживается?
- Активно поддерживается. Последний коммит в flake8 — 4 нояб. 2026 г..
- Для чего можно использовать flake8?
- Проверка соответствия стилю PEP 8 и поиск распространённых ошибок в CI-пайплайне проекта на Python. Запуск проверок линтера через хук Git перед коммитом. Измерение сложности функций и выявление чрезмерно сложных участков кода с помощью McCabe. Создание собственных проверок или форматов вывода в виде плагина Flake8.
- Как установить flake8?
- Следуйте инструкциям по быстрому началу работы, ссылка на которые приведена в README, чтобы установить и запустить Flake8
- Где скачать flake8?
- Исходный код и инструкции по установке — на GitHub: https://github.com/PyCQA/flake8
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Сверхбыстрый линтер и форматтер Python-кода на Rust: более 900 правил линтинга и форматирование, совместимое с Black.
Однофайловый анализатор Python, который проверяет соответствие кода стилю PEP 8 и использует только стандартную библиотеку.
Инструмент для Python, который вычисляет цикломатическую сложность Маккейба функций и отмечает слишком сложный код как плагин flake8.
Плагин для Flake8, который находит вероятные баги и сомнительные шаблоны проектирования, не проверяемые pyflakes и pycodestyle.
Строгий и принципиальный плагин для flake8: поддерживает единый стиль Python и выявляет сложные конструкции кода.