Recientemente actualicé versiones de pylint , un popular corrector de estilo Python.
Se ha vuelto balístico a lo largo de mi código, señalando lugares donde importo módulos en el mismo paquete, sin especificar la ruta completa del paquete.
El nuevo mensaje de error es W0403.
W0403: Importación relativa% r, debe ser% r
Se utiliza cuando se detecta una importación relativa al directorio del paquete.
Ejemplo
Por ejemplo, si mis paquetes están estructurados así:
/cake
/__init__.py
/icing.py
/sponge.py
/drink
y en el paquete de esponja escribo:
import icing
en lugar de
import cake.icing
Obtendré este error.
Si bien entiendo que no todos los mensajes de Pylint son de igual importancia, y no tengo miedo de descartarlos, no entiendo por qué esa práctica se considera una mala idea.
Esperaba que alguien pudiera explicar las trampas, para poder mejorar mi estilo de codificación en lugar de (como lo planeo hacer actualmente) desactivar esta advertencia aparentemente espuria.