一块儿开发项目的时候老是要搭建环境和部署环境的,这个时候必须得有个python第三方包的list,通常都叫作requirements.txt。 若是一个项目使用时virtualenv环境,还好办 pip freeze 就能够解决,可是若是一个项目的依赖list没有维护,并且又是环境混用,那就很差整理的呀,不过,这里安利一个工具 pipreqs,能够自动根据源码生成 requirements.txt .python
$ pip freeze > requirements.txt
这种方式配合virtualenv 才好使,不然把整个环境中的包都列出来了。工具
pip install pipreqs
使用方式也比较简单,直接进入项目下而后使用 pipreqs ./ 命令便可,如:ui
pipreqs ./
有可能会报以下错误:编码
这是因为编码问题所致使的,加上encoding参数便可,以下:spa
pipreqs ./ --encoding=utf-8
直接用下面命令就能够将文件中全部的模块一次性安装了code
安装依赖文件:pip3 install -r requirements.txt
virtualenv为应用提供了隔离的Python运行环境,解决了不一样应用间多版本的冲突问题。blog
例如:ip
若是咱们要同时开发多个应用程序,那这些应用程序都会共用一个Python,就是安装在系统的Python 3。若是应用A须要jinja 2.7,而应用B须要jinja 2.6怎么办?utf-8
这种状况下,每一个应用可能须要各自拥有一套“独立”的Python运行环境。virtualenv就是用来为一个应用建立一套“隔离”的Python运行环境。开发
pip3 install virtualenv
首先:准备对哪一个目录进行虚拟,就先进入到这个目录下(这里是c:\PythonProject\nnblog ),而后运行命令:
virtualenv -p c:\Python36\python.exe venv
说明: -p就是python的版本(须要带上路径) venv就是虚拟的环境变量(目录名字)。
若是不须要指定python版本,直接使用命令:
virtualenv venv
须要进入自动建立的文件夹venv里的script目录
而后执行activate命令
c:\PythonProject\nnblog>cd venv/Scripts c:\PythonProject\nnblog\venv\Scripts>activate
从如今起,任何你使用pip安装的包将会放在 venv
文件夹中,与全局安装的Python隔绝开。
像日常同样安装包,好比:
pip install requests
使用deactivate命令便可退出当前虚拟环境
c:\PythonProject\nnblog\venv\Scripts>activate
这将会回到系统默认的Python解释器,包括已安装的库也会回到默认的。
要删除一个虚拟环境,只需删除它的文件夹便可。