[Python-Dev] Keeping __init__.py empty for Python packages used for module grouping.

Terry Reedy tjreedy at udel.edu
Mon Jan 24 23:44:36 CET 2011

On 1/24/2011 2:18 PM, Georg Brandl wrote:
> Am 24.01.2011 20:04, schrieb Raymond Hettinger:
>> Looking at http://docs.python.org/dev/library/html.html#module-html
>> it would appear that we've created a new module with a single
>> trivial function.
>> In reality, there was already a python package, html, that served
>> to group two loosely related modules, html.parser and
>> html.entities.
>> ISTM, that if we're going to use python packages as "namespace
>> containers" for categorizing modules, then the top level __init__
>> namespace should be left empty.
>> Before the placement of html.escape() becomes set in stone, I think
>> we should consider putting it somewhere else.
> To be honest, I don't see the issue.  I don't see stdlib packages as
> "namespace containers", but rather as a nice way of structuring
> functionality. And remember that flat is better than nested -- why
> should escape() be put away into a new submodule?
> At least you'll need to let us know where you would rather put that
> function.

I would put in html.entities, which is also sparse, as it seems to me 
vaguely related.

Terry Jan Reedy

More information about the Python-Dev mailing list