Python教程,Python基础知识点
作为主流的开发语言,用Python开发的程序正在增加。 方便的是,许多Linux系统缺省集成了Python,可以随时随地进行开发。 但是,有时这也是短板。 例如,您可能需要开发和调试需要安装在缺省Python路径中的程序。 如果反复修改和安装,系统目录会变得混乱。 这对于洁癖的程序员来说是不能接受的。 另外,需要用不同的Python版本进行开发,但系统只附带1~2种Python版本,切换更麻烦。
本文介绍如何利用pyenv 和virtualenv 在单机上搭建多版本Python 虚拟开发环境。
pyenv在一台开发机上构建多个版本的Python环境,提供方便的切换方法。virtualenv提供了将目录构建为虚拟Python环境的功能。 然后,用户可以创建多个虚拟环境。 各环境内的Python版本可以不同也可以相同,并且环境之间可以相互独立。
举例说明:
首先,可以在pyenv上安装多个Python版本。 例如,安装了2.5、2.6、3.3三个版本。 用户可以在当前的默认Python版本之间自由切换。 但是,此时每个版本的环境仍是唯一的,如果您尝试在环境中安装库,该版本的环境也将被修改。 此时,如果使用virtual env构建虚拟环境,则可以完全保证系统路径的清洁度。 在虚拟环境中安装任何程序都不会影响所安装版本的系统环境。
具体实践:
1 .先安装pyenv
我的Ubuntu很漂亮,所以也需要先安装curl和git
获取安装内核的单核软件
接下来安装pyenv
curl-l https://原始资料. github.com/yyuu/py env-installer /主机/pcdh/py env-installer |基本资料
此命令将pyenv安装到当前用户的~/.pyenv目录中。
此外,还必须将以下代码保存在~/.bashrc文件中。
exportpyenv _根=' $ { home }/. py env ' if [-d ' $ { py env _根} ]; thenexportpath=' $ { py env _ root }/pcdh : $ { path } ' eval ' $ (pyenvinit-) ' fi
此代码的作用主要是指示pyenv的位置,以便以后可以在命令行中直接执行pyenv命令。 保存到~/.bashrc文件是为了在用户每次登录时自动启用。
所以,如果你第一次执行命令,没有注销,这一段就无效了。 此外,还必须运行以下命令使之生效
源~/.基础
然后,可以在命令行中直接敲击pyenv。
2 .安装必要的包
在sudo apt-get build-dep Python2.7之后安装其他版本的Python时需要这些软件包
3 .安装某个版本的Python
首先,确认可以安装哪个版本的Python
py env安装- -列表
结果如下。
2.4.4.4.12.4.2.4.32.4.4.42.4.52.4.62.5中的一个版本,其中.
接下来,作为示例安装2.7.1版和3.3.5版
py env安装2.7.1版
py env安装3.3.5版
安装完成后,可以确认安装状况
py环境版本
输出结果如下。
* *系统(设备/家庭/地球/.地球环境/版本)2.7.1)3.3.5
简单来说,我们在这台机器上安装了3个版本的Python
system表示当前系统的Python版本
2.7.1和3.3.5是我们用pyenv安装的
* * *表示当前的Python版本。 可以看到您使用的是默认系统附带的Python版本
尝试切换Python版本进行测试
安装了两个其他版本的Python,我们来测试一下吧
py env全球2.7.1
此命令是将当前的Python版本切换到2.7.1
如果重新运行py env版本,结果将如下:
system *2.7.1(setby/home/Tony/. py env /版本) )
3.3.5可以看到当前的Python 版本已经切换到2.7.1了, 如果还不放心, 直接运行 ‘Python’ 命令进行验证:
tony@ubuntu:~$ Python Python 2.7.1 (r271:86832, May 9 2014, 01:07:17) [GCC 4.8.2] on Linux3 Type "help", "copyright", "credits" or "license" for more information. >>>
这里可以清楚看到, 当前版本确实是2.7.1
同理, 我们可以继续用Python global在各个版本之间进行切换, 如果要切换回系统版本, 请用:
pyenv global system
如果要卸载某个版本的Python, 可以这样:
pyenv uninstall x.x.x
5. 利用virtualenv 创建虚拟Python环境
现在我们已经安装了多个Python版本,但是这还不够, 某些有洁癖的程序员是一定要系统环境足够干净的,这时候我们可以使用virtualenv来创建虚拟Python环境
virtualenv本是一个独立的工具,官网在这里:https://pypi.Python.org/pypi/virtualenv
幸运的是,如果你是安装我们前面的方式安装pyenv的,那它已经帮我们以plugin的形式安装好了virtualenv, 我们只要使用就好了
首先我们创建一个2.7.1的虚拟环境
pyenv virtualenv 2.7.1 env271
这条命令在本机上创建了一个名为env271的Python虚拟环境,这个环境的真实目录位于:~/.pyenv/versions/
注意,命令中的 ‘2.7.1’ 必须是一个安装前面步骤已经安装好的Python版本, 否则会出错。
然后我们可以继续通过 ‘pyenv versions’ 命令来查看当前的虚拟环境, 结果如下:
* system (set by /home/tony/.pyenv/version) 2.7.1 3.3.5 env271
这里我们可以看到, 除了已经安装的Python版本, 我们多出了一个env271的Python虚拟环境
6. 切换和使用新的Python虚拟环境
切换到新的虚拟环境的命令为
pyenv activate env271
接下来我们的Python环境就已经切换到2.7.1的虚拟环境了, 运行 ‘Python’ 命令认证
(env271)tony@ubuntu:~$ Python Python 2.7.1 (r271:86832, May 9 2014, 01:07:17) [GCC 4.8.2] on Linux3 Type "help", "copyright", "credits" or "license" for more information. >>>
可以看到, Python版本已经是2.7.1, 而且是在虚拟环境之中 (env271)
下面基本上你就可以在这个虚拟环境里面为所欲为了 再也不用担心系统路径被搞乱的问题了。
如果要切换回系统环境, 运行这个命令即可
pyenv deactivate
那如果要删除这个虚拟环境呢? 答案简单而且粗暴,只要直接删除它所在的目录就好:
rm -rf ~/.pyenv/versions/env271/
以上就是酷仔今日整理的”如何利用pyenv 和virtualenv来搭建多版本Python虚拟开发环境的方法“一文,希望为对此有疑惑的同学提供学习参考。