4

新しいPythonプロジェクトを開始していますが、 virtualenvを使用してクリーンなスタートを切りたいと思っています。ただし、セットアップした後でも、新しいvirtualenv用にインストールしていない古いモジュールをインポートできます-なぜですか?

私はそれを作成しました:

virtualenv ~/virtualenvs/mynewproject --no-site-packages

今私はでアクティブ化しますsource bin/activate

さて、Pythonインタープリターを(入力するだけでpython)起動すると、virtualenvでpythonインタープリターが使用されると思い、pythonpathはvirutalenvのpythonのsite-packagesパス(/ virtualenvs / mynewporject / lib)に設定されているはずです。 /python2.7/site-packages)、その他何もありません。

ただし、sys.pathを見ると、古いシステム全体のパッケージがすべて利用可能であり、それらを正常にインポートできます。これは、私が望まないことです。

ここで何が欠けていますか?

4

1 に答える 1

5

PYTHONPATH古いバージョンのパッケージがある場所をおそらく指している環境変数を確認してください。この変数は常に最初に来るsys.pathので、必ずクリアするか、アクティブ化するvirtualenvを指すように変更してください。

于 2012-04-26T15:44:53.113 に答える