Loading a module from a subdirectory

Peter Otten __peter__ at web.de
Mon Mar 10 19:36:10 EDT 2014


Virgil Stokes wrote:

> I have the following folder-file structure:
> 
>   C:/PythonCode/VideoPlayerSimulator/
>                                   +--  __init__.py   (empty file)
>                                   +--  GlbVars.py (contains the single
> class Glb)
> 
>   C:/PythonCode/VideoPlayerSimulator/RubberBanding/
>                                           +--  __init__.py
>                                           +--  ImportDemo.py
> 
>   where, ImportDemo.py contains the following code (a single line):
> 
> from VideoPlayerSimulator.GlbVars import Glb as G
> 
>   gives the following error when I execute it:
> 
> *ImportError: No module named VideoPlayerSimulator.GlbVars*
> 
>   Note:
>    1. My sys.path contains:
>       ['C:\\PythonCode\\VideoPlayerSimulator', ...]

VideoPlayerSimulator is a package; its *parent* directory has to be in 
sys.path:
     ['C:\\PythonCode', ...]

>    2. Python 2.7.5 on a Window 7 platform
>    3. The same ImportDemo.py file when executed on my Window Vista
>    platform
>       with the same folder-file structure, *DOES NOT* give an error and
> works
>       as expected.

This is *not* expected; perhaps C:\PythonCode is the current working 
directory and thus accidentally made it into sys.path as ''.
 
> Why does the error occur, and why does it not occur on the Windows Vista
> platform?





More information about the Python-list mailing list