私はPython 2.6でpylint + pydevを使用しています。私は、このモジュールを実行しようとすると 私はコードのちょうどこのラインでモジュールを持って標準ライブラリの一部を認識しないpylint
from email import Message
は今、それが正常に動作します。しかし、エラーを報告しpylint:
ID: E0611 No name 'Message' in module 'email'
それが存在するが... 任意のアイデアはなぜですか?
私はPython 2.6でpylint + pydevを使用しています。私は、このモジュールを実行しようとすると 私はコードのちょうどこのラインでモジュールを持って標準ライブラリの一部を認識しないpylint
from email import Message
は今、それが正常に動作します。しかし、エラーを報告しpylint:
ID: E0611 No name 'Message' in module 'email'
それが存在するが... 任意のアイデアはなぜですか?
私はpylintが好きですが、私は# pylint: disable-msg=E0611
などをたくさん使って、完全に正しいがそれを混乱させるケースではシャットダウンする必要があることを発見しました(例えば、email
' sのインポートトリックで遊んでいる)。
ここでは、電子メールのフォールトです。インポートフックでは再生できないはずです。 –
email
モジュールは過去に私を噛まれていたひどいインポートハッカーを使用しています。私はそれがpylint仕事を作るための非常に有用ではないが、それが問題を説明するのに役立つかもしれません実現
:
>>> from email import Message
いますが、これを行うことはできません:あなたはこれを行うことができます。
あなたはどのバージョンを使用していますか? 'email.Message'はDebian 2.5と2.6を使って私のために働きます。 – Tshepang
これは古い質問ですが、正しい答えは、Richieが説明している "インポートハッカー"を使用して、必要なものを呼び出す古い方法は(多くのチュートリアルではまだ出現していますが)新しい方法を使用すると、より良いコードを書くことになり、pylint
は文句を言わないでしょう。
from email import Message
from email import Header
from email.MIMEText import MIMEText
が
from email.message import Message
from email.header import Header
from email.mime.text import MIMEText
等
なければならない。またlxml.etree' 'で起こります。 – pfctdayelise