Pylint抱怨每个变量都是“未定义的变量”

4

我正在使用版本为1.3.1的pylint,尝试验证test.py文件中的以下代码:

def test(a):
    b = 3
    print(a)
    print(b)

if __name__ == "__main__":
    test(1)

它报错 E0602:
E:  3,10: Undefined variable 'a' (undefined-variable)
E:  4,10: Undefined variable 'b' (undefined-variable)

我认为pylint使用的库可能有问题,因为我不明白变量'a'和'b'为什么未定义。

不确定我的系统出了什么问题。我尝试卸载版本1.3.1,安装最新版本,然后返回到1.3.1并开始遇到这些问题。有人知道原因吗?


Pylint的警告与Python错误不同。我甚至看不出它在抱怨什么。 - TigerhawkT3
我在使用 pylint 1.4.3 版本时没有看到那些错误。 - marbu
你保存了文件吗? - Peter Wood
无法使用pylint 1.4.4重现此问题。 - BlackJack
1
这是一个“bug”,直到1.4.5版本,可以在此处查看我的针对pylint版本的tox测试链接 - IxDay
1个回答

2

我在升级到Red Hat Enterprise Linux 7 (RHEL7)后遇到了这个问题。它目前使用的是 pylint-1.3.1-1.el7.noarch 和 python-astroid-1.2.1-2.el7.noarch 软件包,但是我设法从 epel-testing 库的 python2-astroid-1.4.9-2.el7.noarch 安装了 yum upgrade。我通过卸载 epel-testing 包并重新安装默认软件包解决了这个问题(在我的情况下,通过在 yum 配置中将该软件包列入黑名单)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接