Relative Package Import

Peter Otten __peter__ at web.de
Tue Jul 8 15:09:37 EDT 2008


Robert Hancock wrote:

> mypackage/
>           __init__.py
>           push/
>                     __init__.py
>                      dest.py
>          feed/
>                    __init__py
>                     subject.py
> 
> In subject.py I have
>      from ..push import dest
> 
> But i receive the error:
>   Caught exception importing module subject:
>     File "/usr/local/python/lib/python2.5/site-packages/pychecker/
> checker.py", line 621, in setupMainCode()
>       module = imp.load_module(self.moduleName, file, filename, smt)
>     File "subject.py", line 1, in <module>()
>       from ..feed import dest
>   ValueError: Attempted relative import in non-package
> 
> What am I missing?

When you run subject as a file

pychecker mypackage/feed/subject.py  

subject.py is regarded as a standalone script, not as part of a package. Try

pychecker mypackage.feed.subject 

instead to invoke the module via the standard import mechanism.

Peter



More information about the Python-list mailing list