Loading a module from a subdirectory

Virgil Stokes vs at it.uu.se
Mon Mar 10 21:59:22 CET 2014


On 10-Mar-14 21:31, 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', ...]
>   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.
>
> Why does the error occur, and why does it not occur on the Windows 
> Vista platform?
>
After searching for more on this topic I found that the following did 
work on Windows 7:

import imp
G = imp.load_source('foo', 
'C:/PythonCode/VideoPlayerSimulator/GlbVars.py').Glb

But, I am still unable to determine why my first method does not work on 
Window 7.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20140310/8c07caff/attachment.html>


More information about the Python-list mailing list