pylinting zopeish files:F0401:11,0:无法导入'zope.interface'

时间:2012-05-03 23:21:43

标签: plone zope pylint

我正在尝试针对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'

2 个答案:

答案 0 :(得分:1)

您可以禁用特定的Pylint错误消息:

1)在命令行上使用--disable选项

$ pylint --disable=F0401 youraddon.py

2)在文件中添加特定评论

#pylint: disable=F0401

http://www.logilab.org/card/pylint_manual

答案 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

干杯