Child pages
  • How-to: Python packages
Skip to end of metadata
Go to start of metadata

Action

This document will give you a quick overview of installing custom packages into python. There are two primary ways to do so, one is with pip install --user and the other is virtualenv; both have advantages and disadvantages.

Instructions

Using virtualenv

Here are the examples using virtualenv, the benefit here is that in a shared space many users could collaborate on one custom instances of packages for their group if the venv is created inside a lab share.

Python 2.7

Here we see that numpy is not installed.

ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1031 > /network/rit/misc/software/python2/bin/python2.7
Python 2.7.12 (default, Aug 10 2016, 15:38:28)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named numpy
>>> 


Here we will use virtualenv to setup a virtual python installation and activate it.

ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1032 > virtualenv venv
New python executable in /network/rit/home/ew2193/python_project/venv/bin/python
Installing setuptools, pip, wheel...done.

ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1033 > source venv/bin/activate
(venv)



Once activated we can use the standard tools like pip to install additional standard libraries.

ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1034 > pip install numpy
Collecting numpy
  Downloading numpy-1.11.1-cp27-cp27m-manylinux1_x86_64.whl (15.3MB)
    100% |████████████████████████████████| 15.3MB 59kB/s
Installing collected packages: numpy
Successfully installed numpy-1.11.1
(venv)
ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1035 > python
Python 2.7.12 (default, Aug 10 2016, 15:38:28)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
>>> help(numpy)
Help on package numpy:

NAME
    numpy

FILE
    /network/rit/home/ew2193/python_project/venv/lib/python2.7/site-packages/numpy/__init__.py

DESCRIPTION
    NumPy
    =====


If we deactivate we are back to the system level python and stock packages.

ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1036 > deactivate

ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1037 > python
Python 2.7.5 (default, Nov 21 2015, 00:39:04)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named numpy
>>> 


Python 3

Here is the same set of commands using python3 rather than python2. You will notice only slight changes from the python2 version.

ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1039 > /network/rit/misc/software/python3/bin/virtualenv venv
Using base prefix '/network/rit/misc/software/python3'
New python executable in /network/rit/home/ew2193/python_project/venv/bin/python3.5
Also creating executable in /network/rit/home/ew2193/python_project/venv/bin/python
Installing setuptools, pip, wheel...done.

ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1040 > /network/rit/misc/software/python3/bin/python3
Python 3.5.2 (default, Aug 10 2016, 14:35:13) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'numpy'
>>> 

ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1041 > source venv/bin/activate
(venv) 
ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1042 > pip3 install numpy
Collecting numpy
  Using cached numpy-1.11.1-cp35-cp35m-manylinux1_x86_64.whl
Installing collected packages: numpy
Successfully installed numpy-1.11.1
(venv) 
ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1043 > python3
Python 3.5.2 (default, Aug 10 2016, 14:35:13) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
>>> 
(venv) 
ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1045 > deactivate

ew2193@headnode7.rit.albany.edu:~/python_project                2.08 1.66 1.00 3/201 5951
1046 > python3
Python 3.5.2 (default, Aug 10 2016, 14:35:13)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'numpy'
>>> 



Need more help? Contact the ITS Service Desk.