Pip freeze vs. pip list
Rise to the top 3% as a developer or hire one of them at Toptal: https://topt.al/25cXVn
--------------------------------------------------
Music by Eric Matyas
https://www.soundimage.org
Track title: Puzzle Game 3
--
Chapters
00:00 Pip Freeze Vs. Pip List
00:12 Accepted Answer Score 190
01:02 Answer 2 Score 75
01:32 Answer 3 Score 63
02:10 Answer 4 Score 31
02:47 Answer 5 Score 22
03:17 Thank you
--
Full question
https://stackoverflow.com/questions/1896...
--
Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...
--
Tags
#python #pip
#avk47
ACCEPTED ANSWER
Score 195
One may generate a requirements.txt via:
$ pip freeze > requirements.txt
A user can use this requirements.txt file to install all the dependencies. For instance:
$ pip install -r requirements.txt
The packages need to be in a specific format for pip to understand, such as:
# requirements.txt
feedparser==5.1.3
wsgiref==0.1.2
django==1.4.2
...
That is the "requirements format".
Here, django==1.4.2 implies install django version 1.4.2 (even though the latest is 1.6.x).
If you do not specify ==1.4.2, the latest version available would be installed.
You can read more in "Virtualenv and pip Basics", and the official "Requirements File Format" documentation.
ANSWER 2
Score 75
To answer the second part of this question, the two packages shown in pip list but not pip freeze are setuptools (which is easy_install) and pip itself. 
It looks like pip freeze just doesn't list packages that pip itself depends on. You may use the --all flag to show also those packages. 
From the documentation:
--allDo not skip these packages in the output: pip, setuptools, distribute, wheel
ANSWER 3
Score 63
The main difference is that the output of pip freeze can be dumped into a requirements.txt file and used later to re-construct the "frozen" environment. 
In other words you can run: 
pip freeze > frozen-requirements.txt on one machine and then later on a different machine or on a clean environment you can do:
pip install -r frozen-requirements.txt
and you'll get the an identical environment with the exact same dependencies installed as you had in the original environment where you generated the frozen-requirements.txt.
ANSWER 4
Score 31
Look at the pip documentation, which describes the functionality of both as:
pip list
List installed packages, including editables.
pip freeze
Output installed packages in requirements format.
So there are two differences:
Output format,
freezegives us the standard requirement format that may be used later withpip install -rto install requirements from.Output content,
pip listinclude editables whichpip freezedoes not.