Должен ли это быть отдельный модуль (под каким именем)?
демо / some_useful_name.py
Демонстрационный каталог содержит демонстрационные скрипты. Аналогично, каталог test содержит все ваши модульные тесты.
Должен ли он находиться в корневом каталоге пакета?
Нет. Это не часть пакета. Это демо.
Из пакета?
Да.
In init .py?
Никогда.
У пакета две жизни. (1) в качестве удаленного источника, (2) в пакетах lib / site-как установленный код.
«Источник» должен включать README, setup.py, демонстрационный каталог, тестовый каталог и сам пакет.
«Исходный» файл setup.py верхнего уровня должен устанавливать только пакет. Демо и тест не устанавливаются. Они остаются позади как часть загрузки.