Difference between pip freeze and conda list

I am using both "pip freeze" and "conda list" to list the packages installed in my environment, but what are their differences?


Solution 1:

If the goal only is to list all the installed packages, pip list or conda list are the way to go.

pip freeze, like conda list --export, is more for generating requirements files for your environment. For example, if you have created a package in your customized environment with certain dependencies, you can do conda list --export > requirements.txt. When you are ready to distribute your package to other users, they can easily duplicate your environment and the associated dependencies with conda create --name <envname> --file requirements.txt.


The differences between conda and pip need a longer discussion. There are plenty of explanations on StackOverflow. This article by Jake VanderPlas is a great read as well.

You might also find this table useful. It lists operation equivalences between conda, pip and virtualenv.