mportación correcta y estructura de paquetes ahora que __init__.py es opcional

Estoy creando un paquete que contiene scripts para ejecutar. Importan módulos contenidos en una subcarpeta directamente debajo del script. Ahora eso__init__ no es necesario después de Python 3.3, ¿cuál es la estructura de archivo correcta yimport declaración para tener? Me gustaría no tener que especificar la importación desde la carpeta superior hacia abajo, solo como una ruta relativa, aquísub/module.

Este es el estado actual de la estructura del archivo:

Root\
    src\
        sub\
            module.py
        script.py
        parent_module.py
    setup.py

# Inside script.py
import sub.module      # Doesn't work
from sub import module # Doesn't work
import src.sub.module  # Does work!

import .sub.module     # Doesn't work
import .parent_module  # Does work!

Imagino que necesito teneralguno __init__ archivo, pero ¿qué y dónde sería eso? Cualquier ayuda es muy apreciada, no sé mucho sobre el embalaje.

Además, estoy abierto a sugerencias para cambiar la estructura, si eso facilita las cosas.

Respuestas a la pregunta(1)

Su respuesta a la pregunta