一、为什么要进行包管理"color: #ff0000">二、怎么做
1、命令行 先安装虚拟环境模块
pip3 install virtualenv # 安装virtualenv
进入项目目录,创建python虚拟环境
cd haima_api virtualenv --no-site-packages myvenv # myenv是虚拟环境名字,随便取
这样我们就创建好了haima_api项目的虚拟环境,参数--no-site-packages,这样,已经安装到系统Python环境中的所有第三方包都不会复制过来。
激活虚拟环境
source myvenv/bin/activate
激活之后,命令行最前面会加上一个标识。如下。
这个时候,在命令行下面执行pip install安装后的包就只会安装到刚刚创建的虚拟环境下,只和当前的项目挂钩,与其他项目无关了。
2、使用pycharm
我们开发的时候,更多会使用到pycharm这个ide,新建项目的时候选择虚拟环境即可
pycharm使用虚拟环境创建项目
inherit global site-packages:勾选上的话代表创建的新项目需要copy一份全局包到虚拟环境。
Make available to all projects:勾选上,表示,当在虚拟环境下安装包的时候,copy一份到全局。
前面文章中一只提到了全局包和虚拟环境里的包,在此解释一下他们的存放位置:
全局包存放在python安装目录下的\Lib\site-packages子目录里。
虚拟环境包安装在关联的项目目录下面的\${虚拟环境名}\Lib\site-packages子目录里
三、项目部署时批量导包
- 在当前虚拟环境下,通过pip freeze > requirements.txt(名字随意)
- 在目标服务器上执行,pip install requirements.txt即可
综上,python项目间的包管理就是这么easy,当你要同时开发多个项目的时候,这个是必不可少的。