How do you import python .egg files that are stored in a relative location to the .py code?
For example,
My Application/
My Application/library1.egg
My Application/libs/library2.egg
My Application/test.py
How do you import and use library1 and library2 from within test.py, while leaving the .egg libraries in-place?
An .egg is just a .zip file that acts like a directory from which you can import stuff.
You can use the PYTHONPATH
variable to add the .egg
to your path, or append a directory to
sys.path
. Another option is to use a .pth
file pointing to the eggs.
For more info see A Small Introduction to Python eggs, Python Eggs and All about eggs.
For example, if your library1.egg
contains a package named foo
, and you add library1.egg
to PYTHONPATH
, you can simply import foo
If you can't set PYTHONPATH
, you can write:
import sys
sys.path.append("library1.egg")
import foo