我将如何知道pip包需要我的python项目以及如何列出我在项目中已经使用的内容

时间:2017-07-24 14:11:32

标签: python pip

位于名为example的文件夹中的项目包含项目的所有.py文件。此外,我的项目使用通过pip提供的一些软件包,但是当我需要为我的同事上传到公共git repo以便使用它时,我需要somwhow“索引”或“列出”我通过pip安装的所需软件包为了下载它们。

换句话说,我正在寻找与节点的npm或php的作曲家类似的功能,其中有能力保存我的依赖项的所有引用,以便我的同事通过npm install或{下载它们{1}}。所以我问我怎么能用pip实现类似的功能呢?

编辑1:

我只安装了一些pip包,我将如何将composer install添加到我的源代码中?

我的意思是我的项目的spurce我喜欢这样的条目:

import

如何通过查看导入条目找到我安装的pip包?

1 个答案:

答案 0 :(得分:4)

您正在寻找的是需求文件。

https://pip.pypa.io/en/stable/user_guide/#requirements-files

如果您想保存所有当前包,可以pip freeze > requirements.txt,但我不推荐它,因为这不仅会添加您的脚本所需的包,还会添加您的要求和等等。例如:

$ pip freeze
no packages installed
$ pip install requests
$ pip freeze
certifi==2017.4.17
chardet==3.0.4
idna==2.5
requests==2.18.1
urllib3==1.21.1

因此,在此示例中,只有请求应该在您的需求文件中,但如果您转储pip freeze,则会有一些额外的包。

您的需求文件可能如下所示:

# This is the contests of requirements.txt
requests>=2.18.1,<3.0.0

要安装它,您只需执行pip install -r requirements.txt

如果您开始处理具有不同要求的不同项目,您肯定需要了解virtual environments。这是一种安装不同的python解释器和包的方法。类似于npm将如何在当前文件夹中安装软件包。