在 venv 中获取“ModuleNotFoundError: No module named 'pip'”

Posted

技术标签:

【中文标题】在 venv 中获取“ModuleNotFoundError: No module named \'pip\'”【英文标题】:Getting "ModuleNotFoundError: No module named 'pip'" while inside of venv在 venv 中获取“ModuleNotFoundError: No module named 'pip'” 【发布时间】:2022-01-12 01:36:07 【问题描述】:

尝试使用需要 python 3.10 的 CLI 爬虫 我安装了 python 3.10 并使用这些命令创建了虚拟环境:

sudo apt update && sudo apt -y install python3.10
sudo apt -y install python3.10-dev python3.10-venv
python3.10 -m venv venv
source venv/bin/activate

但是当我尝试安装要求时

pip3 install --update -r requirements.txt

我明白了

Traceback (most recent call last):
  File "/home/alex/scraper/venv/bin/pip3", line 5, in <module>
    from pip._internal.cli.main import main
ModuleNotFoundError: No module named 'pip'

在venv之外,

pip3 --version

返回:

pip 20.3.4 from /usr/lib/python3/dist-packages/pip (python 3.9)

我正在运行 Pop Os 21.04

【问题讨论】:

每个版本的 Python 都需要安装模块。尝试为 3.10 安装 pip 试试sudo apt -y install python3.10-dev python3.10-venv python3.10-pip @mechanical_meat @Alasdair E: Unable to locate package python3.10-pip E: Couldn't find any package by glob 'python3.10-pip' 它很新,3.10...在有人制作相关软件包之前,您可以暂时使用 3.9 吗? 3.10 的点子可能还有另一个来源,但我不确定。 最近更新需要 3.10:/ @mechanical_meat 【参考方案1】:

最新点子下载

curl -sS https://bootstrap.pypa.io/get-pip.py | python3.10

使用 venv 之外的最新 pip,python3.10 -m pip

告诉我正确的用法是

Usage:
/usr/bin/python3.10 -m pip <command> [options]

这就是在 venv 中对我有用的东西

不确定我的 python 3.10 是下载到一个奇怪的目录还是什么

【讨论】:

以上是关于在 venv 中获取“ModuleNotFoundError: No module named 'pip'”的主要内容,如果未能解决你的问题,请参考以下文章

ModuleNotFound 错误尝试在 Heroku 中打开 Django 应用程序 - gunicorn 设置问题?

如果 venv 文件夹安装在子目录中,为啥 VSCode 不检测 venv?

为什么不在PyCharm之外工作

如何查看终端的pycharm中使用了哪个venv?

当我尝试在我的终端上运行代码时,我不断收到“ModuleNotFound”错误,即使我安装了它

如何在 docker 中运行 venv?