python开发环境
哪个得了哟
使用Python开发,环境污染是个很大的问题!之前,我还没有这方面的意识,什么都安装到了系统的环境中,以为这样就可以节省存储空间,减少不必要重复。去年年末在一个公司实习时,同事提醒我要使用虚拟环境,还没怎么注意,自己在写一些东西时,特别是使用Flask等web框架时,什么版本问题,每个项目需求的插件都不尽相同,才发现开发环境污染了,恼火得很。
拿什么拯救
恨更需要自由 爱与恨纠缠不休 我拿什么拯救
- easy_install
- pip
- virtualenv
- virtualenvwrapper
有四大金刚在此,还有什么化解不了的难题吗!
easy_install
Ubuntu安装:
sudo apt-get install python-setuptools
pip
这个嘛,你可以不需要下面的两个,但是这个你必须安装,不然你就别是pythoner。
软件包管理软件。其实easy_install也是包管理软件,而且那个时代还没有pip。只是pip是后起之秀,管理起来更爽。就凭下面两个命令,就让你爽翻天了。
pip install -r requirements.txt # 安装需求的包
pip freeze > requirements.txt # 将项目中的所用到的包输入到requirements.txt文件中
如何安装?
easy_install pip # 如果是ubuntu等非root用户需要加上sudo
virtualenv
前面两个只是python基本需求的,而virtualenv确实如同它的名字一样,和开发环境息息相关的。它让开发环境之间相互隔离,互不相干。但是你又想共用系统已安装的包,如matplotlib,这个包有点不好安装,但是系统已安装好的,其它环境就可以相互使用,可以使用软连接ln -s来解决。
安装:
easy_install virtualenv # 如果是Ubuntu等非root用户需要加上sudo
如果已安装好了virtualenv,那么你就可以使用
virtualenv env_dir # env_dir是你需要建立的虚拟python开发环境文件夹
建议在.bashrc中添加一个alias, 以后直接输入mpy就可以进入自己的开发的环境,照常使用pip管理软件包。
alias mpy='source env_dir/bin/activate'
alias mpy='source /home/lee/software/mpython/env/bin/activate' # 我的配置
virtualenvwrapper
它和virtualenv脱不了关系,说白了,就是给virtualenv上穿了件马甲。它使virtualenv使用起来更方便,更强大,特别是开发环境太多时,它就显示出了优势。安装:
pip install virtualenvwrapper
在.bashrc中配置:
export WORKON_HOME="$HOME/Devel/Environments"
source $HOME/bin/virtualenvwrapper_bashrc # 不一定是virtualenvwrapper_bashrc, 可能是virtualenvwrapper.sh, 建议使用find搜索一下或者到此目录下去看看。
如果要立即生效,请使用:
source ~/.bashrc
如何使用呢?
mkvirtualenv env_dir # 就建立好了开发环境env_dir
当然还有很多命令,如: deactive, 就可以退回系统的环境,不会像virtualenv退出就关闭了终端。
workon other_env_dir 就切换了工作环境等等。
这里也精彩
http://blog.sina.com.cn/s/blog_6768f2290100tzau.html
http://doughellmann.com/2008/05/virtualenvwrapper.html
http://blog.sina.com.cn/s/blog_55646c98010179og.html
来源:oschina
链接:https://my.oschina.net/u/874453/blog/150367