Python2后备方案的编制

Python2后备方案的编制,python,pylint,Python,Pylint,我有一个python模块,通过try/catch设置了一个Python2回退 try: from urllib.parse import urlencode except ImportError: from urlib import urlencode 当我对文件进行pylint时,在模块“urllib”中没有得到名称“urlencode”和类似错误。有没有办法为一个块指定python 2 linting、为一个块禁用所有linting,或者我一直在手动消除所有错误?我找到了一

我有一个python模块,通过try/catch设置了一个Python2回退

try:
    from urllib.parse import urlencode
except ImportError:
    from urlib import urlencode

当我对文件进行pylint时,在模块“urllib”中没有得到名称“urlencode”和类似错误。有没有办法为一个块指定python 2 linting、为一个块禁用所有linting,或者我一直在手动消除所有错误?

我找到了一种更好的方法,在python 2块的开头禁用linting错误,然后在最后重新启用它们

# pylint: disable=no-name-in-module, import-error
from urllib import urlencode
from urllib2 import urlopen
# pylint: enable=no-name-in-module, import-error

您可以在与您未使用(
#pylint:disable=rule name
)运行的
pylint
版本对应的行上使用内联注释。这就是我现在正在做的,但我希望我错过了更干净、更快的内容。像“禁用以下块上的所有linting”这样简单的操作可以节省我的时间并使我的代码更具可读性。据我所知,您可以在行或块级别执行此操作(尽管在本例中,该块可能是您的整个模块)-请参阅