我通过virtualenv命令创建了一个文件夹,但结果不是我想要的。
[root@localhost opt]# virtualenv my_env
New python executable in /opt/my_env/bin/**python2.6**
Also creating executable in /opt/my_env/bin/python
Installing setuptools, pip, wheel...done.
我的系统是CentOS 6.5。在我创建文件夹之前,我将python 2.6升级到python 3.6。然后我想创建一个孤立的环境来练习Django。不幸的是,该文件夹有python 2.6,它应该是python 3.6。 有人能告诉我发生了什么吗?
答案 0 :(得分:3)
我将python 2.6升级到python 3.6
在Python世界中,Python 2和Python 3是两回事。所以你实际做的是安装Python 3和Python 2.现在你的系统既有Python 2(可以通过命令python
运行),也有Python 3(可以通过命令{{1运行) }})
所以当你运行python3
时,它会在CentOS 6.x中解雇默认的Python解释器,即Python 2。这就是你的虚拟环境中Python 2.6的原因。
使用Python 3设置虚拟环境
要在虚拟环境中运行Python 3解释器:
virtualenv my_env
答案 1 :(得分:1)
你可以选择python3 -m venv env
无需virtualenv
你做了什么
virtualenv my_env
正在调用python2 virtualenv
命令来准备python2环境。
此外,你应该看看 Pipenv
答案 2 :(得分:0)
您是否尝试使用-p
选项?如:
$ virtualenv -p /usr/bin/python3.5 venv
答案 3 :(得分:-1)
由于你在Linux上并且许多程序将开始使用python3作为默认值,你可以为python2和3创建别名,以便在系统中虚拟地将默认python切换为python3。为此,只需将这些行添加到~/.bashrc
或~/.bash_aliases
文件中:
alias python='/usr/bin/python3'
alias python2='/usr/bin/python'
这样可以轻松使用最新的Django版本,同时不会破坏任何当前的python程序。它很容易撤消。
脚本可以从#!/usr/bin/python3
或#!/usr/bin/python
开始,分别直接使用python3或python2。