小猿圈Python两大环境管理神器pyenv和virtualenv

最近学习Python有点多,特别是一些关于Python的问题也随之而来了,今天小猿圈Python讲师就总结些知识点,但愿帮助正在学习Python的同窗,今天分享的是Python两大环境管理神器pyenv和virtualenv。python


pyenv是一个开源的Python版本管理工具,能够轻松地给系统安装任意Python版本,想玩哪一个版本,瞬间就能够切换。有了pyenv,咱们不须要再为系统多版本Python共存问题而发愁,也不用为手动编译安装其余Python版本而浪费时间,只须要执行一条简单的命令就能够切换并使用任何其余版本,该工具真正地作到了开箱即用,简单实用。git

virtualenv是一个用来建立彻底隔离的Python虚拟环境的工具,能够为每一个项目工程建立一套独立的Python环境,从而能够解决不一样工程对Python包,或者版本的依赖问题。假若有A和B两个工程,A工程代码要跑起来须要requests1.18.4,而B工程跑起来须要requests2.18.4,这样在一个系统中就没法知足两个工程同时运行问题了。最好的解决办法是用virtualenv给每一个工程建立一个彻底隔离的Python虚拟环境,给每一个虚拟环境安装相应版本的包,让程序使用对应的虚拟环境运行便可。这样既不影响系统Python环境,也能保证任何版本的Python程序能够在同一系统中运行。github

最佳实践:使用pyenv安装任何版本的Python,而后用virtualenv建立虚拟环境时指定须要的Python版本路径,这样就能够建立任何版本的虚拟环境,这样的实践真是极好的!bash

pyenv的安装及使用:工具

一、安装学习

将pyenv安装到~/.pyenv目录(固然你能够安装到任意其余路径)cdn

gitclonehttps://github.com/yyuu/pyenv.git~/.pyenv视频

配置环境变量(个人Shell是zsh,若是是bash,请添加到~/.bashrc)blog

echo'exportPYENV_ROOT="$HOME/.pyenv"'>>~/.zshrc教程

echo'exportPATH="$PYENV_ROOT/bin:$PATH"'>>~/.zshrc

添加pyenv初始化(个人Shell是zsh,若是是bash,请添加到~/.bashrc)

echo'eval"$(pyenvinit-)"'>>~/.zshrc

使当前Shell配置生效,完成安装

exec$SHELL

source~/.zshrc

二、使用

查看有哪些Python版本能够安装

pyenvinstall--list

安装某个Python版本

pyenvinstall-v3.6.4

查看当前Python版本状况(*表示系统当前的Python版本,system表示系统初始版本)

$pyenvversions

system

2.6.7

*3.6.4(setby/Users/haohao/.pyenv/version)

切换Python版本(切换以后查看当前版本)

$pyenvglobal3.6.4

$pyenvversions

system

*3.6.4(setby/Users/haohao/.pyenv/version)

$python-V

Python3.6.4

卸载某个Python版本

pyenvuninstall3.6.4

virtualenv的安装及使用

一、安装

sudopipinstallvirtualenv

二、使用

下面咱们使用virtualenv建立一个彻底隔离的Python虚拟环境:

一、新建一个目录(通常用来用做工程路径)

$mkdirmyproject

二、进入目录建立一个彻底独立干净的虚拟环境

若是virtualenv后面不加任何参数,那么默认建立的虚拟环境的Python版本是系统当前版本,若是要建立其余版本,可使用-p参数指定其余版本的python可执行文件路径。可执行文件能够在上一步安装的pyenv的~/.pyenv/versions路径找到,该路径是pyenv管理的全部Python版本路径。

#使用系统当前的Python版本建立虚拟环境

$virtualenvvenv

Newpythonexecutablein/Users/haohao/PycharmProjects/myproject/venv/bin/python

#建立虚拟环境时指定Python版本

$virtualenv-p~/.pyenv/versions/2.6.7/bin/pythonvenv

Runningvirtualenvwithinterpreter/Users/haohao/.pyenv/versions/2.6.7/bin/python

Newpythonexecutablein/Users/haohao/PycharmProjects/myproject/venv/bin/python

Installingsetuptools<37,pip,wheel<0.30...done.

三、激活建立的虚拟环境并使用

能够看出当前虚拟环境版本已是Python2.6.7了,并且所在路径确实是在上一步建立的虚拟环境路径。接下来使用pip安装的任何包都会安装在虚拟环境目录里面,不会安装在系统标准目录,从而保证当前环境是绝对干净的,对于系统是彻底隔离的。

$sourcevenv/bin/activate

$whichpython

/Users/haohao/PycharmProjects/myproject/venv/bin/python

$python-V

Python2.6.7

四、退出虚拟环境,回到系统版本

$deactivate

想要了解更多关于Python开发方面内容的小伙伴,请关注我或者到小猿圈去观看Python交流群:242719133。在IT电子行业如此激烈的环境下,笑到最后的才是赢家,但就目前趋势Python的将来昭然若揭,想学习Python的小伙伴能够到小猿圈观看最新最全面视频教程。

相关文章
相关标签/搜索