如何为指定版本的Python创建虚拟环境?
当前回答
-p方法运行良好,但您必须记住每次都使用它。如果您的目标是切换到较新版本的Python,这是一个痛苦,也可能导致错误。
您的另一个选项是设置一个环境变量,该变量的作用与-p相同。通过~/.bashrc文件或管理登录会话的环境变量的任何位置设置:
export VIRTUALENV_PYTHON=/path/to/desired/version
然后,每当您不在命令行上指定-p时,virtualenv就会使用它。
其他回答
我使用Windows,所以应该在pthon路径上使用.exe
virtualenv -p=C:\Python27\python2.exe <envname>
正如在多个答案中已经提到的,使用virtualenv是一个干净的解决方案。然而,每个人都应该注意的一个小陷阱是,如果在bash_aliases中设置了python的别名,例如:
python=python3.6
该别名也将在虚拟环境中使用。因此,在这个场景中,在虚拟env中运行python-V将始终输出3.6,而不管使用什么解释器来创建环境:
virtualenv venv --python=pythonX.X
假设您当前在virtualenv中安装了python 2.7。但要使用python3.2,您必须使用以下内容进行更新:
$ virtualenv --python=/usr/bin/python3.2 name_of_your_virtualenv
然后通过以下方式激活virtualenv:
$ source activate name_of_your_virtualenv
然后执行:python——shell中的版本,以检查您的版本现在是否已更新。
以下是如何在Visual Studio Code文件夹中创建虚拟环境的步骤:我使用了Powershell(管理员模式):1.我创建了一个VSCode文件夹-“D:\Code_Python_VE”,希望在其中创建虚拟环境。2.接下来,我键入命令-“pip3 install virtualenv”。(D:\Code_Python_VE>pip3安装virtualenv)3.D:\Code_Python_VE>python3-m venv项目_env4.D:\Code_Python_VE>project_env\Scripts\activate.bat5.D:\Code_Python_VE>ls-这将列出一个新目录“project_env”。6.D:\Code_Python_VE>代码。这将启动Visual Studio代码。确保命令为(code.)。7.使用以下内容创建launch.jason:
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "python",
"request": "launch",
"name": "Python: Current File (Integrated Terminal 1)",
"program": "${file}"
},
{
"name": "Python: Current File (Integrated Terminal 2)",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal"
}
]
}
(请搜索如何转到“调试”窗口并在VS代码中添加新配置)。
在Visual studio代码中按F1,命令托盘将打开-选择Python解释器并选择虚拟环境project_env。添加带有一个语句打印的test.py文件(“Hello World”)。运行此程序。在Visual studio代码终端中-(project_env)d:\Code_Python_VE>Python-m pip安装--升级我希望这有帮助。
是的,上面的答案是正确的,在基于Unix的系统(如Linux和MAC OS X)上运行良好。
我尝试使用以下命令为Python2&Python3创建virtualenv。
这里我分别使用了venv2和venv3作为Python2和Python3的名称。
蟒蛇2»
MacBook-Pro-2:~ admin$ virtualenv venv2 --python=`which python2`
Running virtualenv with interpreter /usr/local/bin/python2
New python executable in /Users/admin/venv2/bin/python
Installing setuptools, pip, wheel...done.
MacBook-Pro-2:~ admin$
MacBook-Pro-2:~ admin$ ls venv2/bin/
activate easy_install pip2.7 python2.7
activate.csh easy_install-2.7 python wheel
activate.fish pip python-config
activate_this.py pip2 python2
MacBook-Pro-2:~ admin$
蟒蛇3»
MacBook-Pro-2:~ admin$ virtualenv venv3 --python=`which python3`
Running virtualenv with interpreter /usr/local/bin/python3
Using base prefix '/Library/Frameworks/Python.framework/Versions/3.6'
New python executable in /Users/admin/venv3/bin/python3
Also creating executable in /Users/admin/venv3/bin/python
Installing setuptools, pip, wheel...done.
MacBook-Pro-2:~ admin$
MacBook-Pro-2:~ admin$ ls venv3/bin/
activate easy_install pip3.6 python3.6
activate.csh easy_install-3.6 python wheel
activate.fish pip python-config
activate_this.py pip3 python3
MacBook-Pro-2:~ admin$
检查Python安装位置
MacBook-Pro-2:~ admin$ which python2
/usr/local/bin/python2
MacBook-Pro-2:~ admin$
MacBook-Pro-2:~ admin$ which python3
/usr/local/bin/python3
MacBook-Pro-2:~ admin$
推荐文章
- 使用python创建一个简单的XML文件
- APT命令行界面式的yes/no输入?
- 如何打印出状态栏和百分比?
- 在Python中获取大文件的MD5哈希值
- 在Python格式字符串中%s是什么意思?
- 如何循环通过所有但最后一项的列表?
- python用什么方法避免默认参数为空列表?
- ValueError: numpy。Ndarray大小改变,可能表示二进制不兼容。期望从C头得到88,从PyObject得到80
- Anaconda /conda -安装特定的软件包版本
- 我在哪里调用Keras的BatchNormalization函数?
- 打印测试执行时间并使用py.test锁定缓慢的测试
- 插入一行到熊猫数据框架
- 要列出Pandas DataFrame列
- 在Django模型中存储电话号码的最佳方法是什么?
- 从导入的模块中模拟函数