繁体   English   中英

导入错误:没有名为站点的模块 - mac

[英]ImportError: No module named site - mac

我有这个问题几个月了。 每次我想获得一个新的 python 包并使用它时,我都会在终端中收到此错误:

ImportError: No module named site

我不知道为什么会出现此错误。 实际上,我不能使用任何新包,因为每次我想安装一个包时都会出现此错误。 我搜索并发现问题出在 PYTHONPATH 和 PYTHONHOME 上,但我不知道它们是什么以及如何更改它们。 我的操作系统是mac os,不知道如何在mac下解决这个问题。

每次打开终端我都使用这两个命令来解决问题:

unset PYTHONHOME
unset PYTHONPATH

但是下次我再次收到错误时。

Python 工具在 Mac OS X 中不断发展,因此 Python 2.7 已被弃用。 升级到 Mac OS X Catalina (10.15.x) 后,我了解到系统默认路径可能不再适用。 这里有几个场景:

  1. GENERIC FIX - 根据站点包和 Python 内部路径上的这个入门,Python 2.7 需要站点包的特定用户路径。 我确定的解决方案很简单:
     mkdir -p ~/.local/lib/python2.7/site-packages
    届时,您将拥有 Python 模块的专用目录(用于 Python 运行)。 (请注意,错误ImportError: No module named site具有误导性,因为它确实表明不存在正确的目录结构以允许正确加载site模块。)
  2. 基本替代方案- 您的PYTHONHOME是否指向 Python3 和您的python --version报告2.7 python3 --version是否报告了一些不同的东西(或根本没有工作)? 当我尝试使用内置插件时,在 Catalina 升级后开始发生此错误。 检查您的.profile.bash_profile以查看它们是否明确设置了自定义PYTHONHOME和/或PYTHONPATH 一种选择是更改它,以便仅在需要更新的 Python 时才显式和手动设置ENV变量。 您可以考虑对python3pip3进行符号链接,将标准命令留给操作系统。
  3. 调试——如果您想测试和/或获取更多信息,请尝试以越来越详细的模式之一执行 Python:
     python -v python -vv python -vvv

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM