newbie: package and import problems
randy_shaffer at my-deja.com
randy_shaffer at my-deja.com
Fri Dec 3 12:13:56 EST 1999
Hello. I'm experiencing an ImportError that I do not understand. I'm
hoping someone can point out what I'm missing - thanks in advance.
I have a package directory structure that looks like this:
TestHarness/
__init__.py
THDatabase/
__init__.py
THUser.py
THUniverse.py
In THUser.py file, I have various class and function definitions
including a top level test() function that excersizes all the code in
the file. From the interpreter command line, I can type:
>>> from TestHarness.THDatabase.THUser import *
>>> test()
Everything works just fine here. There is a problem when just
executing the file stand-alone. The two lines I have in the file that
I understand will enable this are the first:
#!/usr/local/bin/python
and the last:
if __name__ == '__main__': test()
The top few lines in the file look like this:
import TestHarness
import cPickle
import os
import string
from TestHarness.THDatabase.THUniverse import KnownUniverse
This last line causes the exception:
ImportError: No module named THDatabase.THUniverse
Why doesn't python see this file? The top level package name is known
to sys.path.
I can make this go away by including the lines:
from TestHarness import *
from THDatabase import *
from THUniverse import *
But then, in a statement buried in the THUniverse.py file I get an
AttributeError for the variable TestHarness.RootDir. This is given a
value in __init__.py in the top level package, TestHarness/.
What am I doing wrong?
Randy
Sent via Deja.com http://www.deja.com/
Before you buy.
More information about the Python-list
mailing list