【问题标题】:How do I use a different python3.x version of python inside virtual environment如何在虚拟环境中使用不同的 python3.x 版本的 python
【发布时间】:2021-01-11 01:57:13
【问题描述】:

我已经阅读了this 的帖子,但我认为它是关于在虚拟环境中使用 python2 或 python3。 我的问题有点不同,我想在虚拟环境中使用不同版本的 python 3。

我使用的是 Ubuntu 18.04。我的系统中有三个不同版本的 python 3,它们似乎都可以工作。

可以通过提及特定的 python 版本来启动它们。 例如:python3.6、python3.7、python3.8。

但只需键入 python3 将加载 python 3.7,因为它是 Anaconda 的 python 版本。

sankethbk7777@Lenovo-ideapad:/$ which python3
/home/sankethbk7777/anaconda3/bin/python3

但是,我想在其中创建一个带有 python 3.8 作为 python 版本的虚拟环境。 (我的意思是在我的虚拟环境中,如果我输入 python3 - python3.8 应该启动)。

我尝试使用此命令。

sankethbk7777@Lenovo-ideapad:/$ sudo python3.6 -m venv myproject
sankethbk7777@Lenovo-ideapad:/$ source myproject/bin/activate
(myproject) sankethbk7777@Lenovo-ideapad:/$ python3
Python 3.6.9 (default, Oct  8 2020, 12:12:24) 
[GCC 8.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

在上面我们可以看到,当我输入 python3 时,它会启动 python 3.6。

但是当我对 python3.8 尝试相同的操作时,会出现此错误。

sankethbk7777@Lenovo-ideapad:/$ sudo python3.8 -m venv myproject3
Error: Command '['/myproject3/bin/python3.8', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.

但是,我有一个可以工作的 python3.8。

sankethbk7777@Lenovo-ideapad:/$ python3.8
Python 3.8.7 (default, Dec 21 2020, 20:10:35) 
[GCC 7.5.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 
sankethbk7777@Lenovo-ideapad:/$ which python3.8
/usr/bin/python3.8

我将提供任何进一步的信息,请帮助我。

【问题讨论】:

    标签: python python-3.x ubuntu virtualenv


    【解决方案1】:

    看起来你有 Python 的 Anaconda 发行版。我只需使用您需要的 Python 版本创建一个 conda 虚拟环境 -

    conda create -n py38 python=3.8
    

    这应该使用 Python 3.8 版创建一个名为 py38 的 conda 虚拟环境 要激活它,

    conda activate py38
    

    这应该会给你 Python 3.8 版

    【讨论】:

    • 我正在做 django 项目,所以我想使用 python 的虚拟环境。 Anaconda 的虚拟环境更适合数据科学项目。
    • 看起来不可能使用 venv 获得与基本 Python 版本不同的 Python 版本。但是,你可以用 conda 做到这一点。两者都是 Python 虚拟环境,无论它们是从 venv 还是 conda 创建的,并且可以以任何用户想要的方式使用(数据科学或非数据科学,没关系)。
    猜你喜欢
    • 1970-01-01
    • 2019-03-25
    • 1970-01-01
    • 2021-10-24
    • 1970-01-01
    • 1970-01-01
    • 2020-05-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多