["python","pip","requirements.txt"]
Is there any way to show the dependency trees for pip packages?

I have a project with multiple package dependencies, the main requirements being listed in requirements.txt. When I call pip freeze it prints the currently installed packages as plain list. I would prefer to also get their dependency relationships, something like this: Flask==0.9 Jinja2==2.7 Werkzeug==0.8.3 Jinja2==2.7 Werkzeug==0.8.3 Flask-Admin==1.0.6 Flask==0.9 Jinja2==2.7 Werkzeug==0.8.3 The goal is to detect the dependencies of each specific package: Werkzeug==0.8.3 Flask==0.9 Flask-Admin==1.0.6 And insert these into my current requirements.txt. For example, for this input: Flask==0.9 Flask-Admin==1.0.6 Werkzeug==0.8.3 I would like to get: Flask==0.9 Jinja2==2.7 Flask-Admin==1.0.6 Werkzeug==0.8.3 Is there any way show the dependencies of installed pip packages?
You should take a look at pipdeptree: $ pip install pipdeptree $ pipdeptree -fl Warning!!! Cyclic dependencies found: ------------------------------------------------------------------------ xlwt==0.7.5 ruamel.ext.rtf==0.1.1 xlrd==0.9.3 openpyxl==2.0.4 - jdcal==1.0 pymongo==2.7.1 reportlab==3.1.8 - Pillow==2.5.1 - pip - setuptools It doesn't generate a requirements.txt file as you indicated directly. However the source (255 lines of python code) should be relatively easy to modify to your needs, or alternatively you can (as @MERose indicated is in the pipdeptree 0.3 README) out use: pipdeptree --freeze --warn silence | grep -P '^[\w0-9\-=.]+' > requirements.txt The 0.5 version of pipdeptree also allows JSON output with the --json option, that is more easily machine parseble, at the expense of being less readable.