4

Zope インポートによって汚染されたソース コードに対して pylint を実行しようとしています。

************* Module youraddon.interfaces
F0401: 11,0: Unable to import 'zope.interface'

問題のコード:

from zope.interface import Interface 

また、zope.interface の卵は、pylint の sys.path で卵として渡されます。

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'
4

2 に答える 2

1

特定のPylintエラーメッセージを無効にすることができます:

1)--disableオプションを使用してコマンドラインで

$ pylint --disable=F0401 youraddon.py

2)特定のコメントを追加するファイル

#pylint: disable=F0401

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

于 2012-05-04T06:54:53.130 に答える
0

pylint をグローバルにインストールするのではなく、プロジェクトをインストールするビルドアウトと共にインストールします (ビルドアウトを使用していると仮定します)。次に、インスタンスの卵を 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

乾杯

于 2012-05-05T22:58:06.247 に答える