我无法在 ubuntu 中创建新的 virtualenv?

I am unable to create a new virtualenv in ubuntu?

因此,我在 ubuntu 终端中安装了 virtualenv。我使用以下命令安装:

sudo apt install python3-virtualenv
pip install virtualenv

但是当我尝试使用以下方法创建一个新的 virtualenv 时:

virtualenv -p python3 venv

我收到以下错误:

AttributeError: module 'virtualenv.create.via_global_ref.builtin.cpython.mac_os' has no attribute 'CPython2macOsArmFramework'

我该如何解决?

没有必要再使用virtualenv了。自 Python3.3 起,您可以使用 venv 创建虚拟环境。

python3 -m venv ./desired_name_of_env

您不需要使用 virtualenv。你可以使用这个:

python3 -m venv ./some_env

首先,只有一个

sudo apt install python3-virtualenv
pip install virtualenv

应该做的。如果 apt 安装有效,则不需要 pip 命令。

其次,你应该能够创建一个你可以写的地方:

edd@rob:/tmp$ mkdir venvdemo
edd@rob:/tmp$ cd venvdemo/
edd@rob:/tmp/venvdemo$ virtualenv -p python3 venv
created virtual environment CPython3.9.5.final.0-64 in 162ms
  creator CPython3Posix(dest=/tmp/venvdemo/venv, clear=False, no_vcs_ignore=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/edd/.local/share/virtualenv)
    added seed packages: pip==20.3.4, pkg_resources==0.0.0, setuptools==44.1.1, wheel==0.34.2
  activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator
edd@rob:/tmp/venvdemo$ 
edd@rob:/tmp/venvdemo$ ls -a 
.  ..  venv
edd@rob:/tmp/venvdemo$ ls -a venv/
.  ..  bin  .gitignore  lib  pyvenv.cfg
edd@rob:/tmp/venvdemo$ 

(我是在 Ubuntu 机器上完成的)。

第三,有些东西仍然 非常 错误,因为使用 Ubuntu 你不应该收到 CPython2macOsArmFramework.

的错误消息

我也有过类似的经历。这样做的原因是我通过apt和pip3安装了两个virtualenv。

pip3 uninstall virtualenv


virtualenv my-python3

我遇到了类似的问题

sudo virtualenv venv

我在创建环境时遇到了同样的错误。
但是,我试图通过我的 WSL Ubuntu 20.04 LST.
创建它 研究了一下post的评论区有人建议在创建环境的时候加上sudo可以解决这个问题,对我有用。

sudo virtualenv venv

现在,我不确定为什么添加 sudo 会起作用。我的猜测是,如果没有超级用户权限,WSL 无法为本地计算机创建文件夹。