Для модуля Python хорошо иметь строку документации, объясняющую, что модуль делает, что он предоставляет, примеры использования классов. Это отличается от комментариев, которые вы часто видите в начале файла с информацией об авторских правах и лицензии, которую IMO не должна помещать в строку документации (некоторые даже утверждают, что они должны исчезнуть полностью, см., Например, http: // hackerboss. com / избавиться от шаблонов / )
В pylint 2.4 и более поздних версиях вы можете различать разные варианты missing-docstring
, используя три следующих под-сообщения:
C0114
( missing-module-docstring
)
C0115
( missing-class-docstring
)
C0116
( missing-function-docstring
)
Итак, следующий .pylintrc
файл должен работать:
[MASTER]
disable=
C0114,
Для предыдущих версий Pylint не было отдельного кода для различных мест, где могут встречаться строки документации, поэтому все, что вы можете сделать, это отключить C0111. Проблема в том, что если вы отключите это в области видимости модуля, то оно будет отключено везде в модуле (то есть вы не получите ни одной строки C из-за отсутствия строки документации функции / класса / метода. Что, возможно, не очень хорошо.
Итак, я предлагаю добавить эту небольшую недостающую строку документации, говоря что-то вроде:
"""
high level support for doing this and that.
"""
Достаточно скоро вы найдете полезные вещи, чтобы вставить туда, например, предоставление примеров того, как использовать различные классы / функции модуля, которые не обязательно принадлежат отдельным строкам документации классов / функций (например, как эти взаимодействовать, или что-то вроде краткого руководства).
$ cat my_module/test/__init__.py
"Hey, PyLint? SHUT UP"
Уже поздно, но все же я нашел это полезным. Так что делимся. Нашел здесь .
Вы можете добавить флаг «--errors-only» для pylint, чтобы отключить предупреждения.
Для этого зайдите в настройки. Отредактируйте следующую строку:
"python.linting.pylintArgs": []
В качестве
"python.linting.pylintArgs": ["--errors-only"]
И вам хорошо!
источник
"python.linting.pylintArgs": ["--disable=C0111"],
, вероятно, больше, так как просто заглушает предупреждения о строках документации. Однако настройка решает вопрос OP о том, как отключить эти предупреждения только на уровне модуля.Я думаю, что исправить это относительно легко, не отключая эту функцию.
def kos_root(): """Return the pathname of the KOS root directory.""" global _kos_root if _kos_root: return _kos_root
Все, что вам нужно сделать, это добавить строку тройных двойных кавычек в каждую функцию.
источник
Я пришел в поисках ответа, потому что, как сказал @cerin, в проектах Django громоздко и излишне добавлять строки документации модуля в каждый из файлов, которые django автоматически генерирует при создании нового приложения.
Итак, чтобы обойти тот факт, что pylint не позволяет вам указать разницу в типах строк документации, вы можете сделать следующее:
pylint */*.py --msg-template='{path}: {C}:{line:3d},{column:2d}: {msg}' | grep docstring | grep -v module
Вам необходимо обновить шаблон msg, чтобы при использовании grep вы все еще знали имя файла. Это возвращает все остальные типы отсутствующих строк документации, за исключением модулей.
Затем вы можете исправить все эти ошибки, а затем просто запустить:
источник
Нет. Pylint в настоящее время не позволяет различать предупреждения в виде строки документа.
Однако вы можете использовать flake8 для проверки всего кода Python вместе с расширением doc-string, чтобы игнорировать это предупреждение.
Установите расширение doc-string с помощью pip (внутри используется pydocstyle ).
Затем вы можете просто использовать
--ignore D100
переключатель. Напримерflake8 file.py --ignore D100
источник
В pylint 2.4 и более поздних версиях вы можете различать разные варианты
missing-docstring
, используя три следующих под-сообщения:C0114
(missing-module-docstring
)C0115
(missing-class-docstring
)C0116
(missing-function-docstring
)Итак, следующий
.pylintrc
файл должен работать:[MASTER] disable= C0114, # missing-module-docstring
источник
Просто поместите следующие строки в начало любого файла, в котором вы хотите отключить эти предупреждения.
# pylint: disable=missing-module-docstring # pylint: disable=missing-class-docstring # pylint: disable=missing-function-docstring
источник
missing-docstring
(работает для версий до 2.4.0).Отредактируйте «C: \ Users \ Your User \ AppData \ Roaming \ Code \ User \ settings.json» и добавьте эти
python.linting.pylintArgs
строки в конце, как показано ниже:{ "team.showWelcomeMessage": false, "python.dataScience.sendSelectionToInteractiveWindow": true, "git.enableSmartCommit": true, "powershell.codeFormatting.useCorrectCasing": true, "files.autoSave": "onWindowChange", "python.linting.pylintArgs": [ "--load-plugins=pylint_django", "--errors-only" ], }
источник
(1) CTRL + SHIFT + P (2) Затем введите и нажмите> настройки: настройте параметры для конкретного языка (3), а затем введите python после этого мимо кода
{ "python.linting.pylintArgs": [ "--load-plugins=pylint_django","--errors-only" ], }
источник
Перейдите в "settings.json" и отключите python.
pydocstyle
"python.linting.pydocstyleEnabled": false
источник
В моем случае, с pylint 2.6.0, отсутствующие сообщения будут строка документации не исчезнет, даже после того, как явно отключить
missing-module-docstring
,missing-class-docstring
иmissing-function-docstring
в моем.pylintrc
файле. Наконец, у меня сработала следующая конфигурация:По-видимому, pylint 2.6.0 все еще проверяет строки документации, если обе проверки не отключены.
источник