Search code examples
pythonubuntuimporterror

Ubuntu add directory to Python path


I want to run third part tool written in python on my ubuntu machine (corgy tool).

However I don't know how to add additional modules to Python path.

cat doc/download.rst         
There is currently no setup.py, so you need to manually add
the download directory to your PYTHON_PATH environment variable.

How can I add directory to PYTHON_PATH?

I have tried:
export PYTHON_PATH=/home/user/directory:$PYTHON_PATH && source .bashrc
export PATH=/home/user/directory:$PATH && source .bashrc

python
import sys
sys.path.append("/home/user/directory/")

But when I try to run this tool I get:

Traceback (most recent call last):
File "examples/dotbracket_to_bulge_graph.py", line 4, in <module>
import corgy.graph.bulge_graph as cgb
ImportError: No module named corgy.graph.bulge_graph

Solution

  • Create a .bash_profile in your home directory. Then, add the line

    PYTHONPATH=$PYTHONPATH:new_dir
    EXPORT $PYTHONPATH
    

    Or even better:

    if [ -d "new_dir" ] ; then
      PYTHONPATH="$PYTHONPATH:new_dir"
    fi
    EXPORT $PYTHONPATH
    

    The .bash_profile properties are loaded every time you log in.

    The source command is useful if you don't want to log in again.