python 查看依赖包,如何查找Python包的依赖项

How can you programmatically get a Python package's list of dependencies?

The standard setup.py has these documented, but I can't find an easy way to access it from either Python or the command line.

Ideally, I'm looking for something like:

$ pip install somepackage --only-list-deps

kombu>=3.0.8

billiard>=3.3.0.13

boto>=2.26

or:

>>> import package_deps

>>> package = package_deps.find('somepackage')

>>> print package.dependencies

['kombu>=3.0.8', 'billiard>=3.3.0.13', 'boto>=2.26']

Note, I'm not talking about importing a package and finding all referenced modules. While this might find most of the dependent packages, it wouldn't be able to find the minimum version number required. That's only stored in the setup.py.

解决方案

In addition to the pip show [package name] command, there is pipdeptree.

Just do

$ pip install pipdeptree

then run

$ pipdeptree

and it will show you your dependencies in a tree form, e.g.,

flake8==2.5.0

- mccabe [required: >=0.2.1,<0.4, installed: 0.3.1]

- pep8 [required: !=1.6.0,>=1.5.7,!=1.6.1,!=1.6.2, installed: 1.5.7]

- pyflakes [required: >=0.8.1,<1.1, installed: 1.0.0]

ipdb==0.8

- ipython [required: >=0.10, installed: 1.1.0]

The project is located at https://github.com/naiquevin/pipdeptree, where you will also find usage information.

你可能感兴趣的:(python,查看依赖包)