如何在Python 3.8 Azure Functions项目中批量运行Pylint检查?
解决Azure Functions项目中Pylint运行
pylint .的报错问题 首先咱们先理清报错的根源:你运行pylint .时,Pylint会把当前根目录当作一个Python模块来解析,但你的项目根目录并没有__init__.py文件,自然会触发找不到文件的错误。毕竟你的Azure Functions项目结构是每个函数都放在独立子目录里,根目录本身并不是一个Python包,这就和Pylint的默认解析逻辑冲突了。
下面给你几个不用逐个指定函数目录的实用解决方案:
方案1:用通配符批量匹配函数目录
直接通过通配符匹配所有以function开头的函数目录,再加上测试目录,命令如下:
pylint function* tests
这个命令会自动覆盖function1、function2这类目录,后续新增函数目录也不用修改命令,非常省心。
方案2:创建Pylint配置文件固化检查范围
如果不想每次运行都带参数,可以在项目根目录新建一个.pylintrc配置文件,在[MASTER]区块指定要检查的目录:
[MASTER] files=function*,tests
之后你只需要在根目录运行:
pylint
Pylint就会自动按照配置文件里的规则扫描指定目录了。
方案3:用find命令动态获取函数目录
如果你的函数目录命名规则不固定,或者想更灵活地筛选目标目录,可以用find命令动态抓取所有函数目录:
pylint $(find . -type d -name "function*" -maxdepth 1) tests
其中-maxdepth 1确保只查找当前目录下的一级子目录,避免误匹配深层的无关目录。
额外小提醒
注意你的tests目录里的文件是__init.py,少了一个下划线,建议改成__init__.py,这样Pylint才能正确识别测试目录为Python包,避免不必要的警告或解析错误。
内容的提问来源于stack exchange,提问作者Dave
相关产品推荐
相关产品推荐

