Python2中存在site-packages文件夹,但在Python3中不存在。

10

作为根用户,我看到:

root@5d6f29f1d4e9:/usr/local/lib/python2.7# ls -a
.  ..  dist-packages  site-packages
root@5d6f29f1d4e9:/usr/local/lib/python3.6# ls -a
.  ..  dist-packages

当我运行这个命令时:

find / -type d -name 'site-packages'
唯一的结果是:

the only result is:

/usr/local/lib/python2.7/site-packages

有人知道为什么我在3.6中看不到site-packages吗?

我是这样安装python3的:

 apt install -y build-essential libssl-dev libffi-dev python3-dev
 apt install -y python3-pip

然后使用以下命令安装了许多Python包:

 pip3 install gunicorn
 pip3 install wheel
 ...etc...

也许我没有正确安装Python3?


1
也许是 https://dev59.com/Jmox5IYBdhLWcg3wKBR9 的重复。 - William D. Irons
我认为这个问题并没有涉及到2.7和3.x的区别,不是吗? - user5047085
pip3 show gunicorn 的输出是什么? - Lambda Fairy
你用的是哪个发行版?你自己构建了 Python 吗? - David Sidarous
我按照原帖所说的安装了。 - user5047085
执行 updatedb 命令? - Ohad the Lad
2个回答

1
似乎这是Debian特有的功能,使用dist-packages而不是site-packages。您可以检查pip3安装包的路径:python3 -c "import wheel;print(wheel.__file__)"

1
如果你的目标是找到Python安装软件包的位置,那么请继续阅读。
  1. 只需使用python3打开Python控制台。
  2. 检查是否可以直接导入软件包。(当我说直接时,我的意思是没有任何虚拟环境等)import gunicorn
  3. 现在,在控制台中,如果没有错误地工作,这意味着你的Python 3可以找到该软件包。
  4. 如果你想知道Python寻找软件包的位置,显而易见的解决方案是使用sys.path
  5. 所以,import sys然后print(sys.path),这应该会给你一个不超过10个文件夹的列表。只需浏览文件夹,你就会找到默认情况下安装软件包的路径。

或者 只需运行python3 -m site


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接