Python中的Pylint错误

2024-04-29 06:49:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我得到了许多pylint假阳性,这看起来很普通,我无法想象它还没有被解决:-/

以下代码在pylint中生成误报,因为它无法正确识别关键字参数:

class A:
    def __init__(self, *t, x=None):
        if x==1:  # E0601, using variable 'x' before assignment
            x=2
        print(x)

A(x=1)

这通常是由于pylint错误地解释了*之后的关键字参数。 你知道pylint是否仍处于活动状态,在哪里报告它,或者如何找到有人修补了这个问题吗?我找不到对谷歌有用的东西:( 也许是偶然的,有人知道一个补丁,因为它看起来很普通。。。在


Tags: 代码selfnone参数ifinitdef关键字
3条回答

这实际上不是有效的Python(至少在2.x中)。特定关键字参数必须位于*args**kwargs之前。如果尝试将其粘贴到pythonshell中,您将看到一个错误。应该是这样的:

def __init__(self, x=None, *t):

Do you know if pylint is still active, where to report it, or how to find if someone has patched this yet?

我潜伏在mailing list for Pylint和其他logilab项目中。它不是很活跃,但还没有死。在

Pylint的bug跟踪器可以在http://www.logilab.org/857找到

在FreeNode上的Pylint's project page:#pylint上也提到了一个IRC通道。在

派林特一点也没死!报告pb的最佳方法是在http://www.logilab.org/project/pylint或python-projects@logilab.org邮件列表。IRC很好,但不是首选方法。在

python3的支持正在缓慢地发展,因为我们在Logilab中还没有使用太多。但和其他开源项目一样,补丁程序也受到热烈欢迎。在

相关问题 更多 >