On Friday 22 April 2005 07:19 am, codecraig wrote: > Ok, I have the following directory structure > > C:\pycode > --> blah.py > --> mynewdir > --> __init__.py > --> abc.py > > [[ C:\pycode\mynewdir\abc.py ]] > > def doFoo(): > print "hi" > > def doBar(): > print "bye" > > [[ C:\pycode\mynewdir\__init__.py ]] > > from mynewdir import *
This didn't work, did it? There is no module "mynewdir.py" nor a package "mynewdir" in the "mynewdir" directory, and I don't think import will search up to find the container. I suspect you meant that __init__.py says: from abc import * > [[ C:\pycode\blah.py ]] > > ???? > > what do i import in blah.py so that I can accesss, abc.doFoo() ? Assuming the above, and that you want to access it as you have written it, that would be: from mynewdir import abc Note that in order to use this form, you don't have to have *anything* in mynewdir/__init__.py --- it can be an empty file, as long as it exists. You only need to use an import in __init__.py if you want it to automatically run when you import the package. E.g. if you did: import mynewdir You could access your function as: mynewdir.abc.doFoo (which requires the import statement in __init__.py). Cheers, Terry -- Terry Hancock ( hancock at anansispaceworks.com ) Anansi Spaceworks http://www.anansispaceworks.com -- http://mail.python.org/mailman/listinfo/python-list