python - 在 Python 中列出依赖项

标签 python

列出在其他地方(例如在不同的操作系统上)部署工作项目所需的所有依赖项的最有效方法是什么?

Python 2.7,Windows 开发环境,不是每个项目使用一个 virtualenv,而是一个全局开发环境,根据需要安装库,愉快地从一个项目跳到下一个项目。

我一直在跟踪我必须为给定项目安装的大多数(不确定所有)库。我没有跟踪自动安装的任何子依赖项。执行 pip freeze 会列出两者,以及所有其他已安装的库。

有没有办法列出部署项目需要安装的内容,不多也不少?

编辑鉴于下面的答案,一些澄清。我的项目由一堆模块(我编写的)组成,每个模块都有一堆 import。我是否应该将所有模块中的所有导入复制粘贴到一个文件中,排序消除重复项,然后从标准库中丢弃所有内容(我怎么知道它们是)?或者,还有更好的方法?这就是问题所在。

最佳答案

pipreqs 解决了这个问题。它生成项目级 requirements.txt 文件。

安装 pipreqs:pip install pipreqs

  1. 生成项目级requirements.txt文件:pipreqs/path/to/your/project/
  2. 需求文件将保存在/path/to/your/project/requirements.txt

如果您想了解 pipreqs 相对于 pip freeze 的更多优势,请阅读 from here

关于python - 在 Python 中列出依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42237072/

相关文章:

python - 如何使用 NumPy 计算向量化 lambda 中的最大值?

python - 是否有获取每组数据框中唯一值数量的函数?

python - tf.metrics.accuracy 与实际准确度不匹配

python - 如何调整子图的高度和宽度以紧密配合?

python - 为什么 QWebView.loadFinished 在某些网站上被多次调用,例如YouTube?

python - json.loads在python中将小数点转换为 'e'

python - 我可以使用 gimp 命令编写独立的 python 脚本吗?

python - 使用 numpy 重复数组维度(不使用 np.repeat)

python - 与两个 numpy 数组相交并对其进行排序的索引

python - Pygame 在点击之间重置计时器