如何在 Ubuntu 16.04 中创建 Python 3.8 虚拟环境

fhc*_*cat 6 python ubuntu virtualenv python-3.x

在 Ubuntu 16.04 中,Python3 的最新版本是 3.5。如果我只是这样做virutalenv venv,它将使用 Python 3.5 创建一个新的虚拟环境。

我按照https://linuxize.com/post/how-to-install-python-3-8-on-ubuntu-18-04/ 中的说明操作,并apt从 deadsnakes PPA安装了 Python 3.8 。但是我仍然无法创建 Python 3.8 虚拟环境。如果我这样做virtualenv --python=/usr/bin/python3.8,我得到了这个:

user@host:~$ virtualenv --python=/usr/bin/python3.8 venv
RuntimeError: failed to query /usr/bin/python3.8 with code 1 err: 'Traceback (most recent call last):\n  File "/usr/local/lib/python3.5/dist-packages/virtualenv/discovery/py_info.py", line 16, in <module>\n    from distutils import dist\nImportError: cannot import name \'dist\' from \'distutils\' (/usr/lib/python3.8/distutils/__init__.py)\n'
Run Code Online (Sandbox Code Playgroud)

jdb*_*w75 9

我注意到死蛇 ppa 的说明包括:

  • python#.#-venv: 提供标准库venv模块

所以,我相信你需要确保apt install python3.8-venv。然后以下将起作用:

python3.8 -m venv venv_dir
Run Code Online (Sandbox Code Playgroud)

如果您真的想使用virtualenv而不仅仅是本机venv,那么您可以安装它,但您首先需要pip. 所以这个过程看起来像这样:

python3.8 -m ensurepip
python3.8 -m pip install virtualenv
python3.8 -m virtualenv venv_dir
Run Code Online (Sandbox Code Playgroud)

我希望这有帮助!如果您想阅读(和评论/批评,我会欢迎它),我已经编写了几个 Python 虚拟环境工具摘要,您可能会觉得有帮助。请随时告诉我如何使它变得更好。


Chr*_*ris 2

尝试使用内置venv模块而不是virtualenv

/usr/bin/python3.8 -m venv virtualenv_directory/
Run Code Online (Sandbox Code Playgroud)

venv自 3.3 版本起就包含在 Python 中。

  • 我运行它时出错。` user@host:~$ /usr/bin/python3.8 -m venv virtualenv_directory 错误: 命令 '['/home/user/virtualenv_directory/bin/python3.8', '-Im', 'ensurepip', '- -upgrade', '--default-pip']' 返回非零退出状态 1。 ` (2认同)