Nunca había notado el atributo __path__
que se define en algunos de mis paquetes antes de hoy. De acuerdo con la documentación:¿Para qué sirve __path__?
Los paquetes admiten un atributo más especial,
__path__
. Esto es inicializado para ser una lista que contiene el nombre del directorio que contiene el del paquete__init__.py
antes de que se ejecute el código en ese archivo. Esta variable se puede modificar; al hacerlo, afecta las búsquedas futuras de los módulos y los subpaquetes contenidos en el paquete .Aunque esta característica no suele ser necesaria, se puede utilizar para ampliar el conjunto de módulos que se encuentran en un paquete.
¿Alguien podría explicarme qué significa exactamente esto y por qué alguna vez querría usarlo?
Tenía la sensación de que tenía algo que ver con los paquetes de espacio de nombres, pero tuve problemas para reconstruir cómo funcionaba. ¡Gracias! –