[Zope3-dev] __init__.py interfaces.py guidelines?

Jim Fulton jim at zope.com
Mon Nov 21 09:43:32 EST 2005


Jean-Marc Orliaguet wrote:
> 
> OK, so to summarize this  thread:
> 
> - __init__.py files are empty
> 
>   unless for the convenient import of other modules located in the same 
> package or in a subpackage?

Actually, primarily for convenient import by external packages.

> 
> - public interfaces are stored in interfaces.py
> 
> - private interfaces are written along with the implementation code
> 
> - what about file names with an underscore at the beginning? They are 
> used in zope.schema for instance

A Python convention is that a leading underscore indicates privateness.

> - what about import paths inside a same package: relative or absolute?
> 
>    from mypackage.interfaces import ISomeInterface
> or:
>    from interfaces import ISomeInterface

Absolute always.  Until the Python import mechanism is fixed, *always*
use absolute imports.

Jim

-- 
Jim Fulton           mailto:jim at zope.com       Python Powered!
CTO                  (540) 361-1714            http://www.python.org
Zope Corporation     http://www.zope.com       http://www.zope.org


More information about the Zope3-dev mailing list