
Image by Author
# Introduction
It all started when I was cleaning up my computer storage and discovered that Anaconda was taking up 20GB of space. This struck me as strange. After doing some digging, I learned that Anaconda comes with many unused Python packages and tools, which explains its large installation size.
I then began searching for better alternatives that are faster and more lightweight. This led me to discover several Python package managers, and I decided to create a list of them.
In this article, we will explore seven of the most popular and modern package managers for Python, complete with installation commands for Linux systems.
# 1. Uv
uv is a next-generation Python package and environment manager designed for speed. Written in Rust, it aims to outperform traditional tools like pip and Poetry while maintaining full compatibility with the Python ecosystem.
It’s one of my favorite tools so far, as it provides fast installation of new Python packages. It is lightweight and works best when used in a virtual environment.
To install, please enter the following command in your terminal:
curl -LsSf https://astral.sh/uv/install.sh | sh
# 2. Pip
pip is Python’s default package manager, included with most Python installations. It allows users to install, upgrade, and manage packages from the Python Package Index (PyPI), forming the backbone of most Python environments.
Every Python developer starts here, as it is the default package manager and comes with many handy tools. However, it is relatively slow compared to alternatives like uv.
To install, please enter the following command in your terminal:
sudo apt update
sudo apt install python3-pip -y
# 3. Poetry
Poetry is a dependency and packaging tool that simplifies project management in Python. It manages virtual environments, resolves dependencies, and handles publishing seamlessly, all through a single configuration file called pyproject.toml.
Poetry is popular among software engineers because it provides them with greater control over their Python projects.
To install, please enter the following command in your terminal:
curl -sSL https://install.python-poetry.org | python3 -
or
# 4. Conda (Anaconda)
Conda is a cross-platform package and environment manager that is widely used in data science and machine learning. It is capable of managing both Python and non-Python dependencies, such as CUDA, R, or system libraries, and it comes preloaded with Anaconda distributions.
However, there are some downsides to using Conda. It can be slow and may take up a significant amount of storage on your computer. Additionally, it often comes with a lot of pre-installed software that you might never use or may not even be aware of.
To install, please enter the following command in your terminal:
wget https://repo.anaconda.com/archive/Anaconda3-2025.06-1-Linux-x86_64.sh
bash Anaconda3-2025.06-1-Linux-x86_64.sh
# 5. Miniconda
Miniconda is a lightweight version of Anaconda that includes Conda and its essential tools. It allows users to create custom environments without the excess of preinstalled packages, making it ideal for efficient and reproducible setups.
If you are looking for a similar workflow to Anaconda but prefer a leaner and faster option, Miniconda is the best alternative.
To install, please enter the following command in your terminal:
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
# 6. Mamba
Mamba is a fast, drop-in replacement for Conda, written in C++. It dramatically speeds up dependency solving and environment creation, making it a favorite among data scientists who work with large environments. It has largely replaced Miniconda as the go-to tool for a fast and robust Python package manager, particularly for machine learning and data science workflows.
To install, please enter the following command in your terminal:
curl micro.mamba.pm/install.sh | bash
(or inside Conda)
conda install mamba -n base -c conda-forge
# 7. Pixi
Pixi is a cutting-edge package manager built in Rust by the Conda community to unify environment management across different programming languages. It is fully reproducible, cross-platform, and extremely fast, making it ideal for teams that manage mixed technology stacks.
While Pixi is impressive, it hasn’t gained as much popularity as uv. Similar to uv, Pixi offers quick and powerful management of Python dependencies, but it also provides cross-language support.
To install, please enter the following command in your terminal:
curl -fsSL https://pixi.sh/install.sh | bash
# Conclusion
If you are a beginner in data science, start with Anaconda. It’s beginner-friendly and allows you to get productive quickly since many essential tools and libraries come preinstalled. This way, you can focus on learning rather than spending time on setup.
As you gain more experience, consider using uv for a more streamlined and faster day-to-day workflow. If you prefer to remain within the conda ecosystem, mamba is a strong alternative for data science workflows.
Ultimately, the best Python package manager depends on your personal preferences, project needs, team conventions, reproducibility requirements, and the balance you seek between convenience and performance. Select the option that best suits your current stage, and be prepared to adapt as your skills and projects evolve.
Abid Ali Awan (@1abidaliawan) is a certified data scientist professional who loves building machine learning models. Currently, he is focusing on content creation and writing technical blogs on machine learning and data science technologies. Abid holds a Master’s degree in technology management and a bachelor’s degree in telecommunication engineering. His vision is to build an AI product using a graph neural network for students struggling with mental illness.

