无法使用 WSL Debian 和 Python3.10 创建 Python venv
Posted
技术标签:
【中文标题】无法使用 WSL Debian 和 Python3.10 创建 Python venv【英文标题】:Can`t create Python venv using WSL Debian and Python3.10 【发布时间】:2022-01-15 18:54:42 【问题描述】:我正在尝试在 Debian WSL 中默认创建 venv 命令(python3 --version
是 python 3.10.0
):
python3 -m venv venv
它显示了下一个错误:
Error: Command '['/.../venv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.
我发现互联网建议安装依赖项:
sudo apt-get install python3.10-dev python3.10-venv
但它向我展示了:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package python3.10-dev
E: Couldn't find any package by glob 'python3.10-dev'
E: Couldn't find any package by regex 'python3.10-dev'
E: Unable to locate package python3.10-venv
E: Couldn't find any package by glob 'python3.10-venv'
E: Couldn't find any package by regex 'python3.10-venv'
最后,我记得不到一个月前我已经在另一个 repo 中创建了正确的 venv,即使现在它也能正常工作。这让我很困惑。
【问题讨论】:
你的 Debian 代号是什么? @GAD3R 这是巴斯特 尝试安装python3-venv
和python3-dev
,buster默认python版本是3.7。
@GAD3R 我知道 3.7 是默认的。但是当我安装 3.10 时,这个系统中的一切都很好。不知道之后发生了什么,所以它现在不起作用。此外,如果我试图通过 python3.7 创建一个 venv,它说我需要 apt-get install python3-venv
但是当我使用这个命令时它说 python3-venv is already the newest version
【参考方案1】:
它有帮助的原因是lsb_release
问题。
对我有用的方法是:
-
以 root 或 sudo 身份打开
/usr/bin/lsb_release
。
将文件的第一行从# !/usr/bin/python3 -Es
编辑为# !/usr/bin/python3.10 -Es
。
保存文件。
然后 venv 应该可以正常工作了。
【讨论】:
如果您认为这个问题在本网站的其他地方有答案 - flag it as duplicate 而不是发布答案的链接作为答案... @Tomerikoo 我不认为这是重复的,因为问题不一样,只回答)所以如果有人遇到同样的问题,他们可以更快地找到解决方案。 但是,问题在于该响应与您的问题之间没有明显的相关性;而不是只做一个链接的答案,你应该解释你做了什么以及它如何/为什么解决了你的问题。 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center。 谢谢。我已经编辑了我的答案。希望现在看起来好多了。以上是关于无法使用 WSL Debian 和 Python3.10 创建 Python venv的主要内容,如果未能解决你的问题,请参考以下文章
Windows10 WSL2 Ubuntu / Debian # 无网络
如何在 wsl2 上从 python3 运行 Selenium ChromeDriver?
使用 WSL2 在 Docker Desktop 上运行的容器没有实时输出
在 WSL (Ubuntu) 中为 python3 安装 venv
使用 WSL-2 和 Docker 在 PhpStorm 中设置 PHPUnit:无法解析 PHPUnit 版本输出:无法打开输入文件