我正在尝试针对Zope导入污染的源代码运行pylint:
************* Module youraddon.interfaces
F0401: 11,0: Unable to import 'zope.interface'
问题中的代码:
from zope.interface import Interface
zope.interface egg在sys.path中传递给pylint作为egg:
cat ../../bin/pylint|grep -i interface
'/fast/buildout-cache/eggs/zope.interface-3.6.7-py2.6-macosx-10.6-i386.egg',
现在的问题是
我能以一种理解它的方式进行pylint import zope.interface吗?为什么它真的失败了?
如果没有,我怎么能抑制导入警告并将其余文件丢失?
也得到:
# E0611: 11,0: No name 'interface' in module 'zope'
答案 0 :(得分:1)
您可以禁用特定的Pylint错误消息:
1)在命令行上使用--disable选项
$ pylint --disable=F0401 youraddon.py
2)在文件中添加特定评论
#pylint: disable=F0401
答案 1 :(得分:0)
我不会全局安装pylint,而是使用您正在安装项目的buildout安装它(假设您正在使用buildout)。然后,您将实例鸡蛋添加到pylint部分。
这样的事情:
[buildout]
parts =
instance
pylint
[instance]
...
eggs =
your.addon
...
[pylint]
recipe = zc.recipe.egg
entry-points = pylint=pylint.lint:Run
eggs =
pylint
${instance:eggs}
一个更复杂的例子:https://github.com/4teamwork/ftw-buildouts/blob/master/test-base.cfg#L163
干杯