Python生成requirements.txt的两种方法
本文介绍在Python项目中生成requirements.txt文件的两种常用方法。第一种利用pip freeze命令,但需注意其会导出全局环境所有依赖,易造成冗余;第二种推荐使用pipreqs工具,它能智能分析代码实际导入的库,生成精简且准确的依赖列表,并支持指定编码和强制覆盖。
Python依赖环境重建问题
在Python开发中,如何在另一台机器或新的虚拟环境中快速重建项目所需的运行依赖环境?
手动记录依赖包不仅繁琐,还容易遗漏。即便手动安装,也难以精确匹配代码报错时所需的特定版本。通过生成requirements.txt文件,可以有效解决这些依赖管理难题。
生成requirements.txt文件主要有两种实现方式:
方法一:使用pip freeze
第一种方法适用于单一虚拟环境场景:
pip freeze > requirements.txt
该方法仅推荐在独立虚拟环境中使用。原因在于,此方式会将当前Python环境下的所有已安装包全部导出。若在全局环境中执行,无论是否被当前项目实际引用,所有下载的包都会被包含在内,如图所示。

显然,这种包含大量无关包的全局环境导出结果并非我们所需。因此,当使用全局Python环境时,建议采用第二种方法。
方法二:使用pipreqs工具
第二种方法(推荐)是使用 pipreqs,其GitHub仓库地址为:https://github.com/bndr/pipreqs
# 安装
pip install pipreqs
# 在当前目录生成
pipreqs . --encoding=utf8 --force
请注意,--encoding=utf8 参数用于指定使用UTF-8编码。如果不添加此参数,可能会遇到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的两种方法,希望能对读者有所帮助。如有任何疑问,欢迎留言,小编会及时回复。感谢大家对本站的支持! 如果觉得本文对您有帮助,欢迎转载,请注明出处,谢谢!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













