Pylint¶
Pylint — это инструмент, который проверяет ошибки в коде Python, пытается внедрить стандарт кодирования и ищет запахи кода. Он также может искать определенные ошибки типа, он может порекомендовать предложения о том, как конкретные блоки могут быть реорганизованы, и может предложить вам подробности о сложности кода. https://pylint.readthedocs.io/en/latest/
sudo pip install pylint
С расширением Flycheck emacs вывод pylint будет показан прямо внутри ваших буферов emacs. Spacemacs имеет flycheck в своем слое « синтаксическая проверка«.
M-x package-install RET flycheck
Настройте pylint с помощью файла pylintrc.
pylint --generate-rcfile >.pylintrc
Пилинт Odoo плагин¶
pip install --upgrade git+https://github.com/oca/pylint-odoo.git or pip install --upgrade --pre pylint-odoo
Добавьте плагин в pylintrc.
load-plugins=pylint_odoo
Полезные конфигурации¶
По умолчанию в каждой строке допускается 100 символов. Разрешить 120 символов
max-line-length=120
Чтобы отключить определенное предупреждение, добавьте его код в список « disable« в pylintrc. Например, если вам не нравится это сообщение « Отсутствует метод docstring« с кодом C0111 или это « Использование super в классе старого стиля« (E1002)
disable=E1608,W1627,E1601,E1603,E1602,E1605,E1604,E1607,E1606,W1621,W1620,W1623,W1622,W1625,W1624,W1609,W1608,W1607,W1606,W1605,W1604,W1603,W1602,W1601,W1639,W1640,I0021,W1638,I0020,W1618,W1619,W1630,W1626,W1637,W1634,W1635,W1610,W1611,W1612,W1613,W1614,W1615,W1616,W1617,W1632,W1633,W0704,W1628,W1629,W1636,C0111,E1002
Flychek выделяет строки импорта odoo как « из моделей импорта openerp, полей, api« с сообщением об ошибке « F0401: Невозможно импортировать … « . Есть два варианта, чтобы исправить это — http://stackoverflow.com/questions/1899436/pylint-unable-to-import-error-how-to-set-pythonpath.
Отредактируйте « pylintrc«, чтобы включить ваш каталог odoo следующим образом:
init-hook='import sys; sys.path.append("/path/to/odoo")'
Команда pylint: опции, ключи и примеры использования
Общие команды – Общие команды, присущие различным операционным системам.
pylint
- Show lint errors in a file:
- Lint a file and use a configuration file (usually named pylintrc ):
- Lint a file and disable a specific error code:
Примеры кода, демонстрирующие общие подходы в программировании или же решающие небольшие прикладные задачи. Языки программирования и библиотеки, позволяющие эффективно решать задачи разработки. Объектно-ориентированное программирование, функциональное программирование и прочие подходы и …

Трюки Bash
Полезные заметки по работе с командной строкой: bash и прочие *sh. Однострочники, скрипты, позволяющие решать большие и малые задачи администрирования и настройки Юникс систем. Zsh для современного MacOS, Bash для …

Заметки о настройке различных IT-штуковин. Настройка, допиливание, полировка. Конфигурируем приложения и тюнингуем сервера. Полезные параметры и ключи запуска программ. Увеличиваем скорость, уменьшаем отклик, ускоряем работу и улучшаем результаты работы. Объясняем …

Терминал/Консоль
Команды и инструкции терминала (консоли) Linux, MacOS, Windows и прочих операционных систем. Трюки и особенности командных оболочек, скрипты для администрирования Unix. Программирование и скриптование Windows и Linux, тонкая настройка Macos. …

Также может быть вам интересно:
- Как получить дерево директорий на Bash одним однострочником
- Python: Функции
- Python: Встроенные типы данных (list, set, dict, etc)
- Python: типы данных, переменные, логическое ветвление и циклы
- Как сделать свою middleware в Django (с примерами)
Свежее на «Цифре»
MessageId или как дебажить систему с минимумом проблем
Программы, 49 дней назад
Проверочный список для выпуска промышленных приложений с иллюстрациями
Работа и управление, 90 дней назад
В Google Pixel и Windows Snipping Tool есть возможность восстановления обрезанных изображений
Новости, 23.03.2023
Два подарка «под ёлочку» от Heroes of Might and Magic
Новости, 25.12.2022
Вышел Pulsar – редактор кода на основе Atom
Новости, 25.12.2022
Ленивый backup PostgreSQL
Программы, 17.12.2022
Google анонсировала OSV-Scanner: сканер уязвимостей в программных проектах
Новости, 16.12.2022

Gitea запускает коммерческую версию, а недовольные – форк Forĝejo
На днях группа бывших разработчиков Gitea решили создать на базе хостинга кода Gitea свою версию проекта – «Forgejo». Причиной тому …

Пользователи и их создание в Django — своя регистрация на сайте
Если вашим сайтом должны активно пользоваться несколько человек, то полезно их различать, а значит — надо уметь создавать пользователей, либо …

Новый синтаксис старой команды with в Python 3.10
Как же долго моё чувство прекрасного страдало… Но в Python 3.10 появился новый парсер синтаксических конструкций Python!

Добавляем постраничную пагинацию на Django сайт
На сайтах часто встречаются многостраничные объекты: список товаров, список заметок и т.д. Поэтому важно уметь добавить навигацию по страницам на …

Новый оператор match-case в Python
В новой версии Python (3.10) появится новый оператор. Новый оператор сопоставления по шаблону (match-case).

Нет слов, одни. однострочники
На днях вышел пост со списком полезных однострочников для JavaScript программистов. Памятуя Perl-овую молодость, заглянул туда.

Добавляем переменные в контекст Django шаблонов (свой контекст-процессор)
В Django вы можете передавать данные в шаблоны посредством контекстов. Контекст передаётся из контроллера (view в терминах Django), однако, если …

Пример своей консольной команды в Django проекте
Если вы работали с Django проектом, то, скорее всего, запускали команды из консоли (manage.py). В Django есть простой способ писать …

Разграничение прав доступа на Django сайте
Почти на любом веб-сайте необходимо разделять пользователей на группы и предоставлять им разные возможности. В Django есть довольно серьёзная система …
Как запустить pylint через командную строку, если проверяемый скрипт и pylint расположены в разных папках?
Всем привет! Хочу использовать pylint для анализа скрипта. Создал скрипт в папке: C:\Users\user\Desktop\Desktop2\tut_pylint Для установки pylint ввожу через консоль pip install pylint . Запускаю команду из директории C:\Users\user\anaconda3\Scripts, иначе получаю ошибку
"pip" не является внутренней или внешней командой, исполняемой программой или пакетным файлом.
Для анализа моего скрипта иду обратно в папку со скриптом, ввожу команду pylint simple1.py , появляется эта же ошибка, указанная выше. Каким образом применить pylint для этого скрипта? Спасибо! P.S.: В переменной Path уже добавил путь к директории с pip :
C:\Users\user; C:\Users\user\anaconda3; C:\Users\user\anaconda3\Scripts
Python: PyLint – поиск ошибок и анализ качества кода
Кроме PEP8 среди инструментов для разработчиков на Python имеется утилита PyLint.
Домашняя страница проекта – тут>>>.
Установка на Cygwin:
$ apt-cyg install pylint
На CentOS:
# yum install pylint
Если при запуске программы появляется ошибка вида:
$ pylint scrypt.py Traceback (most recent call last): File "/usr/bin/pylint", line 5, in from pkg_resources import load_entry_point ImportError: No module named pkg_resources
$ curl http://peak.telecommunity.com/dist/ez_setup.py | python . Installing easy_install script to /usr/bin Installing easy_install-2.7 script to /usr/bin Installed /usr/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg Processing dependencies for setuptools==0.6c11 Finished processing dependencies for setuptools==0.6c11
Для примера работы PyLint – возьмём простой файл:
$ cat hello.py #!/usr/bin/env python print('Hello')
$ pylint hello.py | less ************* Module hello C: 3, 0: Unnecessary parens after 'print' keyword (superfluous-parens) C: 1, 0: Missing module docstring (missing-docstring)
Помощь по опциям PyLint :
$ pylint -h
Сообщения могут иметь одну из 5-ти маркировок:
- [R] efactor for a “good practice” metric violation
- [C] onvention for coding standard violation
- [W] arning for stylistic problems, or minor programming issues
- [E] rror for important programming issues (i.e. most probably bug)
- [F] atal for errors which prevented further processing
PyLint можно интегрировать в IDE, такие как PyCharm и текстовые редакторы, например VIM. Можно использовать в CI приложениях, например Jenkins.
Подробное описание каждого типа ошибок можно найти тут>>>.
Документация PyLint доступна тут>>>.