问题标签 [pylintrc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
354 浏览

python - 如何配置 pylint 以获得更高的准确性

从 pylint 获得误报

考虑这段代码:

这是输出(这里没有惊喜):

检查它使用pylint给出以下内容:

如您所见,基于初始化为的事实pylint抱怨该表达式,即使当它具有该值时无法到达该语句。此外,尽管在最后一行进行了赋值,但它仍抱怨基于常量的命名样式。previous[0]previousNoneprevious

问题:是否有任何合适的 pylint 配置可以避免此类误报,而不会引入同样明显的误报,如果是这样,为什么这不是默认配置?

尝试的解决方案:禁用测试(导致假阴性)

例如,我可以unsubscriptable-object完全抑制警告,方法是创建一个$HOME/.pylintrc包含 的输出pylint3 --generate-rcfile,并对其进行编辑以添加unsubscriptable-object到禁用测试列表中(请参阅下面disable=的部分[MESSAGES CONTROL])。

但是,如果我只是以这种方式禁用测试,然后验证以下代码:

它告诉我:

所以仅仅禁用测试并不是真正的答案。

版本和平台信息

版本信息:

平台:Ubuntu 18.04.4 LTS

0 投票
0 回答
385 浏览

python - 如何让 pylint 在全局范围内忽略单个模块的未使用导入?

我使用打字模块。我想始终使用代码from typing import List, Set, Dict, Tuple, Optional而不停止编辑该行以仅引用当前模块中使用的类型。

但是 pylint 抱怨此模块中未使用的任何类型“使用从输入中导入的 foo”。我通过使用来解决这个问题from typing import List, Set, Dict, Tuple, Optional # pylint: disable=unused-import

不是# pylint: disable=unused-import每次我导入打字时都附加,我可以在 .pylintrc 中添加一条规则,这意味着“仅在我导入打字时禁用未使用的导入”?

我不想完全禁用未使用的导入。我只想在从打字导入时禁用它。

0 投票
0 回答
189 浏览

python - Pylint 中“设计”最大指标背后的基本原理

Pylint 有许多指标来确保代码可读且不太复杂。

这些最大数字背后的基本原理(或一些文献)是什么?

特别是,我想知道

  • 函数/方法的最大参数数 (5)
  • 函数/方法体的最大分支数 (12)
  • 函数/方法体的最大本地数 (15)

谢谢

0 投票
0 回答
2129 浏览

python - 如何让 pylint 使用 init-hook 正确导入我的文件

我按照这些说明如何让 pylint 使用init-hook.

但是,当我运行终端命令时,pylint server.py --rcfile=../.pylintrc我得到TypeError: expected str, bytes or os.PathLike object, not NoneType. (我认为这是因为init-hook找到 rcfile 的部分以某种方式失败,但我不确定。)

这是我.pylintrc的相关部分的文件(其余部分只是默认模板):

我怎样才能让这个 init-hook 代码正常工作?

0 投票
1 回答
2507 浏览

python - 如何在 Visual Studio Code 上禁用 pylint 警告和消息?

我正在使用 Mac 并在 VS Code 上使用 Python 进行编程。安装 pylint 后,我​​收到了一堆警告和消息。如何禁用这些?我知道在 pylintrc 文件中添加一些行,但我不知道在哪里可以找到它或如何在 Mac 上创建它。

0 投票
1 回答
5335 浏览

python - Pylint 变量名不符合snake_case 命名风格

我有多个来自 pylint 的警告:'''变量名“df”不符合 snake_case 命名风格''' 据我所知,这是因为变量名长度小于 3 个符号。但是我想使用 df、i、x 等变量。

所以,我需要在 linting 异常中添加几个变量名。我尝试将这些名称添加到我的项目目录中 pylintrc 文件的好名称部分,其中 manage.py 位于: pylintrc: '''# 应该始终接受的好变量名称,用逗号分隔。good-names=i, j, k, ex, Run, df, l, l1, l2, l3''' 它没有帮助,我仍然收到关于变量名样式的警告。如果有人可以提供想法,我将不胜感激。

0 投票
1 回答
705 浏览

python-3.x - PyLint 不适用于 GitLab (Python 3.X)

我在 gitlab 上遇到了 Pylint 的问题。出于某种原因,它在分析代码的过程中崩溃了。但没有对我说什么,只是崩溃了。

这是一些日志:

以下是 .gitlab-cy.yml 配置文件:

有了这个错误代码,我在网上什么也没找到。我在 gitlab 上有其他项目具有相同的配置,它们运行没有任何问题。

有人已经看过了吗?

谢谢!!

0 投票
0 回答
105 浏览

python - 如何在所有带有pylint的目录中按名称忽略文件?

我希望 pylint 忽略我所有的init .py 文件。这些文件存在于我的所有目录中,有时也存在于嵌套(多个级别)目录中。

我有一个 .pylintrc 文件。
我试图设置忽略模式选项,但它不起作用。
我尝试执行以下操作:ignore-patterns=^\w+/__init__.py
但是,它不起作用,并且不适用于嵌套文件。

有没有办法做到这一点?

编辑


我像这样设置我的ignore_patterns:ignore-patterns=apps.py,__init__.py

如果我有这样的结构:

模型内的文件被忽略,但不是应用程序文件夹内的文件...

有没有办法做到这一点?

谢谢

0 投票
2 回答
476 浏览

atom-editor - 如何在 Atom 编辑器中忽略特定的 Pylint 消息?

当我使用制表符缩进时,我在 Windows 上的 atom 中使用 Pylint linter 包,它给了我以下错误:

W0311 Bad indentation Found 1 spaces, Expected 4.

即使 atom 正在使用“选项卡”(选项卡类型很难)

.pylintrc使用以下方法创建了一个 Pylint 配置文件:

pylint --generate-rcfile > .pylintrc

并添加

在 [消息控制] 部分下。

同样在 atom 包的设置中,我输入了 RC 配置文件的位置。我重新启动了原子,它仍然在每一行上产生错误消息 W0311。

我怎样才能摆脱这个消息?

0 投票
1 回答
82 浏览

python - 忽略 jenkins 中 pylint 扫描中的某些文件

我是詹金斯的新手。我正在尝试将 pylint 与 jenkins build 集成。在我的 jenkins 文件中,我说它扫描所有带有 .py 扩展名的文件,并且仅当 jenkins 构建分数大于 9/10 时才部署。我有一种情况需要告诉 pylint 明确忽略某些文件。我浏览了 pylint 文档,发现我们可以使用 pylint-ignore 或添加文件以忽略 pylint.cfg 文件中的部分

我的詹金斯扫描码如下所示

我收到这个错误

但是如果我执行

从我的命令行,它忽略我在我的 pylint.cfg 文件中指定的所有文件,扩展名为 .py

并给我一个分数。我正在尝试对詹金斯做同样的事情并且很难过