[英]python pre-commit and pylint
我正在使用 Python 3.8.5(在 Visual Studio Code 中)、預提交和 pylint 設置一個項目。 在項目中,pylint 報告了 PyQt5 模塊導入,因為它們基於 C。
為了不讓 Pylint 報告此問題, 可以使用extension-pkg-whitelist=PyQt5
配置.pylintrc
文件。 這在 IDE 中運行良好。 此外,我像這樣使用 pylint 設置了預提交,但 pylint 似乎忽略了值 PyQt5 因為預提交仍然報告 pyqt5 的導入錯誤
- repo: https://github.com/PyCQA/pylint
rev: pylint-2.5.0
hooks:
- id: pylint
args: [--extension-pkg-whitelist=PyQt5]
Main\main.py:1:0: E0401: Unable to import 'PyQt5.QtWidgets' (import-error)
Pylint 仍然接受參數,因為例如傳遞--errors-only
確實有效。 在 cli 中使用這些確切參數調用 pylint 按預期工作:它不會報告 PyQt5,但通過預提交調用似乎不起作用。 我知道該參數已被注意到,因為省略“PyQt5”作為值會導致錯誤指出缺少參數。 因此,不知何故,該值的解析方式與 cli 中的解析方式不同。
我嘗試了上面給出的格式, 這里的格式,我嘗試像這樣拆分參數args: [--extension-pkg-whitelist, PyQt5]
,我嘗試添加單引號/雙引號。 它似乎沒有撿起它。
如何將 args 傳遞給需要鍵和值的鈎子?
提前致謝
我對 pydantic 庫也有類似的問題。 我必須將庫添加為依賴項:
- repo: https://github.com/pycqa/pylint
rev: v2.9.6
hooks:
- id: pylint
additional_dependencies:
- 'pydantic'
args:
["--extension-pkg-whitelist=pydantic"]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.