There are many Python tools whose use is not obvious to someone who has only recently started using Python.
Here is a quick list that clarifies a couple of things you will hear about when using Python.
A tool used to package Python projects. Use Setuptools instead.
A tool used to manage Python dependencies. Use Pip instead.
A format used to distribute Python projects. Use Wheel files instead.
A package manager for projects hosted at PyPi. It's a replacement for EasyInstall. Very simple to use:
$ pip install your-project-name.
Similar to RubyGems.
Works nicely with Virtualenv
short for Python Packaging Authority
An organization that defines and oversees everything related to packaging Python projects.
Projects such as Pip and Virtualenv are part of PyPa.
short for Python Package Index
It's a repository for Python packages.
This is where Pip downloads and installs packages from
You can upload packages you have created using Setuptools or Distutils
A tool for packaging Python projects. It's a replacement for Distutils.
Uses a file named
setup.py located in a project's root.
A tool you can use to install Python packages (via Pip) all in a single directory rather than globally on your system.
Supports different Python versions and environments in the same machine
If you mess up things, just delete the Virtualenv and start again
Works nicely with Pip
A format used to distribute Python projects. It's a replacement for Egg files.
Wheel files are created using Pip:
$ pip wheel ...
Pip can install software from Wheel files