Quick Python: Package Namespacing

Brandon Rozek

February 3, 2020

Package namespacing can help organize modules within a larger project. It can also help show that a package belongs to an organization.

For example, let’s say you want to have a module named companyname.component. Then you want to have the following project structure.

companyname/
component/
__init__.py
...
setup.py


Note that there is no __init__.py under companyname.

Then in your setup.py denote where to find the packages using a namespace.

from setuptools import setup, find_namespace_packages

setup(name="companyname.component",
version="0.0.1",
packages=find_namespace_packages(include=["companyname.*"]))