Python如何自动生成环境依赖包requirements

 更新时间:2025年04月16日 14:51:37   作者:Fighting_1997  
这篇文章主要介绍了Python如何自动生成环境依赖包requirements问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

生成当前 python 环境 安装的所有依赖包

1、命令

# cd 到项目路径下,执行以下命令
pip freeze > requirements.txt
 
# 或者使用如下命令
pip list --format=freeze > requirements.txt

2、常见问题

1、中使用 pip freeze > requirements.txt 命令导出已安装的模块,其中部分模块显示了 @ file:///…,而不是具体的版本号,如下图:

此时,如果我们直接在其他机器上边使用 pip install -r requirements.txt 安装模块时,就会遇到如下错误:

ERROR: Could not install packages due to an EnvironmentError: [Errno 2] No such
file or directory: ‘C:\ci\cffi_1600699250966\work’

原因

这是 pip 安装软件包的一种特殊语法(自19.1开始受支持)PEP404,但是该此种路径取决于环境,file:///URL 仅在本地文件系统上可用,你不能将生成的 requirements.txt 文件提供给其他人使用

解决

使用上述命令导出的文件中,会包含如下几个包:distribute,pip,setuptools,wheel。。。,建议手动删除!

只生成当前 项目 的所有依赖包

1、步骤

1.1 安装 pipreqs

pip install pipreqs

1.2 执行命令,在当前工程目录生成

# cd 到项目路径下,执行以下命令
# 如果已经存在requirements.txt,需要加上 --force 覆盖之
# 如果提示“UnicodeDecodeError: 'gbk' codec can't decode ”的错误,需要指定字符集 --encoding=utf8
# 如果有想要忽略的目录,可以使用 --ignore <dirs> ...忽略额外的目录
pipreqs ./ --encoding=utf8 --force

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

pip install -r requirements.txt

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python super()函数使用及多重继承

    Python super()函数使用及多重继承

    这篇文章主要介绍了Python super()函数使用及多重继承,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • 有关pycharm登录github时有的时候会报错connection reset的问题

    有关pycharm登录github时有的时候会报错connection reset的问题

    这篇文章主要介绍了有关pycharm登录github时有的时候会报错connection reset的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • Pycharm中安装Pygal并使用Pygal模拟掷骰子(推荐)

    Pycharm中安装Pygal并使用Pygal模拟掷骰子(推荐)

    这篇文章主要介绍了Pycharm中安装Pygal并使用Pygal模拟掷骰子,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • python小程序实现刷票功能详解

    python小程序实现刷票功能详解

    这篇文章主要介绍了python小程序实现刷票功能详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • python迭代器与生成器详解

    python迭代器与生成器详解

    迭代器和生成器都是Python中特有的概念,迭代器可以看作是一个特殊的对象,每次调用该对象时会返回自身的下一个元素,从实现上来看,一个可迭代的对象必须是定义了__iter__()方法的对象,而一个迭代器必须是定义了__iter__()方法和next()方法的对象。
    2016-03-03
  • python GUI库图形界面开发之pyinstaller打包python程序为exe安装文件

    python GUI库图形界面开发之pyinstaller打包python程序为exe安装文件

    这篇文章主要介绍了python GUI库图形界面开发之pyinstaller打包python程序为exe安装文件,需要的朋友可以参考下
    2020-02-02
  • Python MySQL数据库连接池组件pymysqlpool详解

    Python MySQL数据库连接池组件pymysqlpool详解

    这篇文章主要跟大家介绍了关于Python MySQL数据库连接池组件pymysqlpool的相关资料,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-07-07
  • Flask框架实现的前端RSA加密与后端Python解密功能详解

    Flask框架实现的前端RSA加密与后端Python解密功能详解

    这篇文章主要介绍了Flask框架实现的前端RSA加密与后端Python解密功能,结合实例形式详细分析了flask框架前端使用jsencrypt.js加密与后端Python解密相关操作技巧,需要的朋友可以参考下
    2019-08-08
  • Python 迭代,for...in遍历,迭代原理与应用示例

    Python 迭代,for...in遍历,迭代原理与应用示例

    这篇文章主要介绍了Python 迭代,for...in遍历,迭代原理与应用,结合实例形式分析了Python迭代与遍历的相关操作技巧与使用注意事项,需要的朋友可以参考下
    2019-10-10
  • Python爬虫之Selenium中frame/iframe表单嵌套页面

    Python爬虫之Selenium中frame/iframe表单嵌套页面

    这篇文章主要介绍了Python爬虫之Selenium中frame/iframe表单嵌套页面,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12

最新评论