以
pyenv
及pipenv + autoenv
的方式开发Python;
所涉及到的工具有:
Python版本管理
Pyenv
是一种可以实现安装不同版本Python
并可在不同版本间任意切换的管理工具。
其功能类似于在Node.JS
中的NVM
版本管理工具;
Python项目的环境及包管理
Pipenv
是python项目中的包管理工具,通过pipenv
安装的pyhon包将被记录于pipfile
当中,方便项目中包的依赖管理及安装部署;Pipenv
工具是集pip, pipfile, virtualenv于一身,故它也实现了项目目录的虚拟环境创建,使得其项目的运行环境能够满足独立且隔离,不受系统及其他环境的影响;Pipenv
功能类似于在Node.JS
中的NPM
包管理工具;1
2
3
4
5
6
1. 在第一次执行`pipenv install`时,会在该项目创建对应的虚拟环境;
2. 同时生成Pipfile及Pipfile.lock文件,用于管理项目中Python包依赖;
3. 第一次安装依赖包,需要指定`--two`或`--three`参数指定python2/3.x的运行环境
pipenv install --three <packageName>
Python项目环境的自启动
Autoenv
可以实现在进入项目目录时,将自启动需要的运行环境;
1 . 安装autoenv
使用pip方式安装存在问题,会导致terminal异常退出,之后的版本可能会有更新;
目前是以git
方式进行安装:1
2 git clone git://github.com/kennethreitz/autoenv.git ~/.autoenv
echo 'source ~/.autoenv/activate.sh' >> ~/.bashrc
2 . 创建.env
文件
在已有的pipenv项目中运行pipenv shell
,
会得到虚拟环境路径信息,通过信息创建.env
运行环境文件;
1 | echo "source /home/{userName}/.local/share/virtualenvs/{projectName}/bin/activate" > {projectName}/.env |
3 . 再次进入项目目录,将自启动该项目的虚拟环境