首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pip包安装和虚拟化

pip包安装和虚拟化
EN

Ask Ubuntu用户
提问于 2019-12-25 10:59:46
回答 1查看 1.1K关注 0票数 1

早上好!

快速总结:我对pip和virtualenv有一个问题。不管我的virtualenv是否被激活,我的pip都会将包安装到venv的站点中--但是当我的venv python在外部读取包时,它会从一个完全不同的文件夹中读取包(详细信息如下),这样我就不能在venv之外为我的python安装包了。我的猜测是,我需要确保pip安装在不同的地方时,在内部或外部的静脉。我似乎找不到我的pip的配置文件,这是指定的,而且我看过的大部分wabpage要么与我的问题无关,要么远远超出了我的脑袋。

一些细节(我还不熟悉使用ubuntu、linux和python的数据,所以如果我遗漏了任何重要信息,请这样说,我将尝试填写缺少的内容):外部venv:

代码语言:javascript
复制
$which python

结果:

代码语言:javascript
复制
usr/bin/python

代码语言:javascript
复制
$which pip

给出

代码语言:javascript
复制
/home/username/.local/bin/pip

我发现python站点包可以识别它寻找包的位置,所以这是在使用它时的输出(我还包括通知我问题的内容):

代码语言:javascript
复制
$ python
Python 3.6.9 (default, Nov  7 2019, 10:44:02) 
[GCC 8.3.0] on linux
>>> import site
>>> print(site.getsitepackages())
['/usr/local/lib/python3.6/dist-packages', '/usr/lib/python3/dist-packages', '/usr/lib/python3.6/dist-packages']
>>> import numpy
Traceback (most recent call last):
  File "", line 1, in 
ModuleNotFoundError: No module named 'numpy'
>>> exit()
$ pip install numpy
Requirement already satisfied: numpy in ./projectFolder/venv/lib/python3.6/site-packages (1.17.4)

纵观目录,我找不到python的站点包目录,但是我可以找到一个dist包(如上面所示),而在venv中有一个站点包,其中pip安装包。

激活我的静脉会产生以下结果:

代码语言:javascript
复制
(venv)$ which python
/home/username/projectFolder/venv/bin/python
(venv)$ which pip
/home/username/projectFolder/venv/bin/pip

使用venv下的站点提供:

代码语言:javascript
复制
(venv)$ python
Python 3.6.9 (default, Nov  7 2019, 10:44:02) 
[GCC 8.3.0] on linux
>>> import site
>>> print(site.getsitepackages())
Traceback (most recent call last):
  File "", line 1, in 
AttributeError: module 'site' has no attribute 'getsitepackages'
EN

回答 1

Ask Ubuntu用户

发布于 2020-05-12 20:18:33

virtualenv维护者:https://github.com/pypa/virtualenv/issues/737#issuecomment-319078189很好地描述了这个问题。

我将在此引用他的评论:

问题(据我理解)是,virtualenv实现了自己版本的site.py,该版本没有完全跟踪核心Python版本(这就是上面提到的#355后面的问题--如果您遵循该链接,并链接到从该链接链接到的各种问题,您将得到背景信息)。修复这个问题并不像“同步到核心site.py”那么简单,因为我们需要支持多个Python版本,而且site.py已经在它们之间发生了变化。

票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1198457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档