web-dev-qa-db-ja.com

Anacondaをインストールした後、常に「KeyError: 'PYTHONPATH'」メッセージが表示されます

MacにAnacondafor Python 3.4をインストールした後、次のようなメッセージが頻繁に表示されます。

Error in sitecustomize; set PYTHONVERBOSE for traceback: 
KeyError: 'PYTHONPATH'

別の質問でユーザーが提案したように、私は

PYTHONVERBOSE=1 conda update --all

そして、トレースバックを受け取りました:

Traceback (most recent call last):
  File "/Users/user/anaconda/lib/python3.4/site.py", line 506, in execsitecustomize
    import sitecustomize
  File "<frozen importlib._bootstrap>", line 2237, in _find_and_load
  File "<frozen importlib._bootstrap>", line 2226, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1200, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1129, in _exec
  File "<frozen importlib._bootstrap>", line 1471, in exec_module
  File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed
  File "/usr/local/lib/python2.7/site-packages/sitecustomize.py", line 15, in <module>
    str(sys.version_info[0]) + '.x!\n     PYTHONPATH is currently: "' + str(os.environ['PYTHONPATH']) + '"\n' +
  File "/Users/user/anaconda/lib/python3.4/os.py", line 633, in __getitem__
    raise KeyError(key) from None
KeyError: 'PYTHONPATH'
# destroy sitecustomize

調べてみると、「PYTHONPATH」がos.environのキーとして存在しないことがわかりました。

12

PYTHONPATH環境変数が設定されている場合は、設定を解除します。 echo $PYTHONPATHで確認できます。設定されている場合は、おそらく〜/ .profileまたは〜/ .bash_profileの何かから来ています。

問題はファイル/usr/local/lib/python2.7/site-packages/sitecustomize.pyです。そのファイルが何で、どこから来たのかを確認したい場合がありますが、ファイルを削除すると問題が解決するはずです。

14
asmeurer

表示されたエラーを検索した後にこのページにアクセスする可能性のある人々の詳細については、ここでnecro-answerにアクセスしてください…

Macに/ usr/local /を参照するメッセージがある場合は、先に進んで、homebrewを使用して何かをインストールしたと想定します。この場合、Pythonです。

AnacondaのPythonディストリビューションがインストールされている場合、チェックすることの1つは、既存のPythonインストールに適用されているサイトのカスタマイズがあるかどうかです。インストールした場合Python using Homebrew)のどのバージョンでも、そのようなサイトのカスタマイズがある可能性があります。

  1. conda info -a | grep dirsを実行すると、Anacondaのインストール情報が取得され、dirsが含まれている行が検索されます。存在する場合は、1つだけ一致する必要があります。

    user site dirs: ~/.local/lib/python3.5

  2. それが存在する場合cdをそのディレクトリ(それが何であれ)に移動し、ディレクトリリスト(ls )。次に、(おそらく)homebrew.pthというファイルが見つかります。

  3. そのファイルを削除すると、エラーはなくなります。

理由:Anacondaはそのhomebrew.pthファイルを参照しています。このファイルには、以前のhomebrew-インストールされたバージョンのPythonのsitecustomize.pyが含まれています。

11
Dustin