pylint 配置问题

问题描述 投票:0回答:1

我正在尝试将 pylint 配置为接受两个字母变量名称,而不给出“不符合 Snake_case 命名风格”警告。

我已经设置了默认的 ~/pylintrc 并尝试按如下方式编辑它

  • 添加
    variable-rgx=[a-z_][a-z0-9_]{1-30}$
  • 添加
    variable-rgx=[a-z\_][a-z0-9_]{1-30}$
    (我不知道为什么会有反斜杠,但我在一个随机网站上发现它谈论配置 pylint 并认为值得一试)
  • 以上都注释掉和不注释掉
    variable-naming-style=snake_case
  • 添加一些我常用的 2 个字母变量
    good-names

当我直接在终端中或通过 Vim/Ale 运行 pylint 时,就会发生这种情况(也许并不奇怪)。我已经多次关闭并重新启动我的终端,甚至重新启动一次以尝试清除可能正在发生的任何缓存,但我无法让它工作。

奇怪的是,将

max-line-length
更改为 120 效果很好,所以我知道 pylint 实际上正在读取
~/pylintrc
。为什么这个有效,而我上面的努力却没有?

python pylint pylintrc
1个回答
0
投票

让我们一一回顾一下您的方法和子问题:

添加

variable-rgx=[a-z_][a-z0-9_]{1-30}$

重复说明符中存在拼写错误。它必须是逗号而不是连字符。下面的行将按预期工作:

variable-rgx=[a-z_][a-z0-9_]{1,30}$
    this character changed ---^

这已经是解决方案了。现在我们也来看看其他方法。

添加

variable-rgx=[a-z\_][a-z0-9_]{1-30}$
(我不知道为什么会有反斜杠,但我在一个随机网站上发现它谈论配置 pylint 并认为值得一试)

这存在上述拼写错误。我也不知道反斜杠应该做什么。它允许像

\foo
这样的变量 - 这些变量在 Python 中仍然是无效的语法错误 - 是的,我猜?

一般来说,不要将随机网站中的随机内容放入您的配置中。

以上都注释掉和不注释掉

variable-naming-style=snake_case

这是无关紧要的

variable-rgx
覆盖
variable-naming-style

添加一些我常用的 2 个字母变量

good-names

这在个别情况下确实有效。不过,它会将

('i', 'j', 'k', 'ex', 'Run', '_')
的(合理)默认值覆盖为 记录

假设您想要将

yo
oi
列入白名单,您可以将以下行添加到您的
pylintrc
中:

good-names=i,j,k,ex,Run,_,yo,oi

总的来说,我发现首先尝试命令行中的

pylint
选项非常有帮助,只有在确认它们有效时才将它们放入
pylintc
中。这很容易,因为任何命令行参数
--foo
都会变成
foo
中的
pylintrc

© www.soinside.com 2019 - 2024. All rights reserved.