Pip is a package management system used to install and manage software packages, such as those found in the Python Package Index.

### What is Pip?

Pip is a replacement for easy_install.

Packages installs the packages default under site-packages.

### Installing Pip

To install Pip on your system, you can use either the source tarball or by using easy_install.
>> $easy_install pip After that, the pip application is installed. ### Pip Usage How to use Pip ##### Installing a package $ pip install simplejson
[... progress report ...]
Successfully installed simplejson
$pip install --upgrade simplejson [... progress report ...] Successfully installed simplejson ##### Removing a package $ pip uninstall simplejson
Uninstalling simplejson:
/home/me/env/lib/python2.7/site-packages/simplejson
/home/me/env/lib/python2.7/site-packages/simplejson-2.2.1-py2.7.egg-info
Proceed (y/n)? y
Successfully uninstalled simplejson
##### Searching a package
#Search PyPI for packages
\$ pip search "query"
##### Checking status of a package
# To get info about an installed package, including its location and files:
pip show ProjectName

### Why use Pip over easy_install?

(The answer is taken from this post on stackoverflow)

Partially-completed installation doesn’t occur as a result.

Care is taken to present useful output on the console.

The reasons for actions are kept track of.

For instance, if a package is being installed, pip keeps track of why that package was required.

Error messages should be useful.

The code is relatively concise and cohesive, making it easier to use programmatically.

Packages don’t have to be installed as egg archives, they can be installed flat.

Native support for other version control systems (Git, Mercurial and Bazaar)

Uninstallation of packages.

Simple to define fixed sets of requirements and reliably reproduce a set of packages.