没有名为'virtualenv.activation.xonsh'的模块。

31
我在一个新的环境中尝试执行pipenv shell,但出现了以下错误:

我试图在一个新的环境中执行pipenv shell,但是遇到了以下错误:

Loading .env environment variables…
Creating a virtualenv for this project…
Using /home/user/.pyenv/shims/python3.9 (3.9.7) to create virtualenv…
⠋ModuleNotFoundError: No module named 'virtualenv.activation.xonsh'
Error while trying to remove the /home/user/.local/share/virtualenvs/7t env: 
No such file or directory

Virtualenv location: 
Warning: Your Pipfile requires python_version 3.9, but you are using None (/bin/python).
  $ pipenv check will surely fail.
Spawning environment shell (/usr/bin/zsh). Use 'exit' to leave.

我尝试删除pipenv,使用pipenv创建一个别名为python的python环境,但是什么都不起作用。

有什么想法吗?在现有环境中,我遇到了同样的错误,我尝试删除所有环境文件夹但是没有效果。

谢谢。

4个回答

63

删除virtualenv pip包对我起了作用(在Ubuntu WSL上)

pip uninstall virtualenv

1
它可以工作,但我不得不使用:pip3.9 uninstall virtualenv其他在系统上安装了多个Python版本的人可能会遇到相同的问题。 - Ajite

20

通过 Github 问题,有效的解决方案如下:

sudo apt-get remove python3-virtualenv

1
这个解决方案为什么有效还不是很清楚?安装提供所需依赖项的包似乎不太直观? - lifeofguenter

4

当我在我的pyproject.toml中将Python 3.7更新到3.9时,遇到了相同的错误:

[tool.poetry.dependencies]
- python = "^3.7"
+ python = "^3.9"

我的问题是我还没有安装 python3.9-venv。很简单:
sudo apt install python3.9-venv

请检查

python3.9 -m venv

操作系统:Ubuntu 21.10,因此您的软件包名称可能有所不同


4

我使用Mac(搭配Homebrew + Pyenv),但其他解决方案都没有帮助。事实证明,尽管pipenv似乎可以正常运行,但Pipenv安装本身某种程度上是不完整/损坏的。解决方法如下:

pip install pipenv

修复了我的问题。如果上述方法不能完全解决问题,您还可以尝试进行更彻底的重新安装。

pip install --force-reinstall pipenv

此外,我在系统和用户级别上都安装了pipenv。卸载两者,然后强制重新安装解决了我的问题。我认为这可能与依赖版本不匹配有关。 - Eric Fossum

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