0

最近の Canopy の更新 (現在は 1.1; Windows 7 x64) が何らかの形で Python パスを壊したかどうか疑問に思っています。コマンドラインからインストールされたパッケージをインポートできなくなりました (そのため、最終的に C:\Users\USERNAME\AppData\Local\Enthought\Canopy\System\Lib\site-packages または C:\Users\ に配置されました) USERNAME\AppData\Local\Enthought\Canopy\User\Lib\site-packages) で、更新前は問題なく動作していました。興味深いことに、Canopy によってインストールされた PyLab リンクも失敗します (「matplotlib という名前のモジュールがありません」)。これを修正する方法はありますか?

4

1 に答える 1

0

Canopy\User にインストールしたパッケージは引き続きインポート可能です。Canopy\System にインストールしたパッケージは、Canopy 1.1 以降ではインストールされません。System は Canopy アプリケーション自体による内部使用のみを目的としているため、実際には、これらはそこにインストールされるべきではありません。

変更された点は、外部パッケージは Canopy User Python にのみインストールする必要があるというルールをより強力に適用するようになったことです: https://support.enthought.com/entries/23389761-Installing-packages-into-Canopy-Python-from -コマンドライン

仮想環境のレイアウトの詳細については、http: //docs.enthought.com/canopy/configure/faq.html#where-are-all-of-the-python-packages-in-my-user-を参照してください。 python-環境

トポロジー的には、Canopy System Python は Canopy 1.0 と Canopy 1.1 の両方で Canopy Core Python の子でした​​が、Canopy User Python は 1.0 の System の子から 1.1 の兄弟に変更されました。この変更により、パッケージを複製するためにディスク容量が少し失われ、堅牢性が大幅に向上しました。

その結果、Canopy 1.1 では、System が Canopy User Python の sys.path に存在しなくなりました。

結論: Canopy を終了し、システム ディレクトリを削除することをお勧めします。そうすれば、次回の再起動時にクリーンに再作成されます。次に、仕様に従って、「不足している」パッケージをユーザーにインストールします。

お役に立てれば。

于 2013-09-02T21:13:21.477 に答える