python生成requirements.txt的两种方法

yipeiwu_com6年前Python基础

python项目如何在另一个环境上重新构建项目所需要的运行环境依赖包?

使用的时候边记载是个很麻烦的事情,总会出现遗漏的包的问题,这个时候手动安装也很麻烦,不能确定代码报错的需要安装的包是什么版本。这些问题,requirements.txt都可以解决!

生成requirements.txt,有两种方式:

第一种 适用于 单虚拟环境的情况:

pip freeze > requirements.txt

为什么只适用于单虚拟环境?因为这种方式,会将环境中的依赖包全都加入,如果使用的全局环境,则下载的所有包都会在里面,不管是不时当前项目依赖的,如下图

当然这种情况并不是我们想要的,当我们使用的是全局环境时,可以使用第二种方法。

第二种 (推荐) 使用 pipreqs ,github地址为: https://github.com/bndr/pipreqs

# 安装
pip install pipreqs
# 在当前目录生成
pipreqs . --encoding=utf8 --force

注意 --encoding=utf8 为使用utf8编码,不然可能会报UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 406: illegal multibyte sequence 的错误。

--force 强制执行,当 生成目录下的requirements.txt存在时覆盖。

当当当,可以看见我依赖的只有这些啦

使用requirements.txt安装依赖的方式:

pip install -r requirements.txt

总结

以上所述是小编给大家介绍的python生成requirements.txt的两种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

numpy.transpose()实现数组的转置例子

说到转置操作,顺便提及矩阵与数组的区别: 矩阵:数学里的概念,其元素只能是数值,这也是区别于数组的根本所在 数组:计算机中的概念,代表一种数据组织、存储方式,其元素可以是数字、也可以是字...

Python下的Mysql模块MySQLdb安装详解

默认情况下,MySQLdb包是没有安装的,不信? 看到类似下面的代码你就信了。复制代码 代码如下: -bash-3.2# /usr/local/python2.7.3/bin/pytho...

Python提取PDF内容的方法(文本、图像、线条等)

1.安装PDFminer3k 使用pip 命令安装 pip install pdfminer3k 2.编写测试 你可以在这里获得官方参考:PDFMiner 如果你不喜欢看英...

详解python列表生成式和列表生成式器区别

本文实例为大家分享了python(列表生成式/器)的具体代码,供大家参考,具体内容如下 一、列表生成式 #列表生成式是快速生成一个列表的一些公式 numbers = [] for...

Python中的super()方法使用简介

子类里访问父类的同名属性,而又不想直接引用父类的名字,因为说不定什么时候会去修改它,所以数据还是只保留一份的好。其实呢,还有更好的理由不去直接引用父类的名字, 这时候就该super()登...