安装Anaconda后,我得到了不断的关键错误:' PYTHONPATH'"消息

时间:2015-09-01 00:51:15

标签: python macos anaconda

在我的Mac上安装Anaconda for 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

我环顾四周,发现&#39; PYTHONPATH&#39;在os.environ中不作为键存在。

2 个答案:

答案 0 :(得分:14)

如果设置了PYTHONPATH环境变量,请取消设置。您可以查看echo $PYTHONPATH。如果设置它可能来自〜/ .profile或〜/ .bash_profile中的某些内容。

问题是文件/usr/local/lib/python2.7/site-packages/sitecustomize.py。您可能想要检查该文件是什么以及它来自何处,但删除它应该可以解决问题。

答案 1 :(得分:11)

在这里找到更多详细信息,以便在搜索显示的错误后可能会点击此页面的人员进行更新的详细信息...

如果您的Mac上有引用/ usr / local /的消息,我将继续并假设您已使用自制程序进行安装。在这种情况下,Python。

当安装Anaconda的Python发行版时,它要检查的一件事是,是否有任何站点自定义应用于您现有的Python安装。如果您使用 Homebrew 安装了任何版本的Python,则可能会进行此类站点自定义。

  1. 运行sum()会获得您的Anaconda安装信息,并查找包含conda info -a | grep dirs的行。只有一个匹配(如果存在):

    dirs

  2. 如果 存在,user site dirs: ~/.local/lib/python3.5到该目录(无论它是什么),并获得目录列表(cd)。然后您(可能)找到一个名为 ls 的文件。

  3. 删除该文件,错误消失。
  4. 原因:Anaconda引用了 homebrew.pth 文件,该文件继续包含您早期自制安装版本的homebrew.pth蟒。