¿Cuál es el significado de ‘from xy import z’ en Python?

Importar x

desde x importar y

de xy import z

La primera instrucción importa el módulo especificado en el espacio de nombres actual.
La segunda instrucción importa todo desde el módulo especificado ‘y’ al espacio de nombres actual.

La tercera instrucción importa el módulo especificado ‘z’ dentro del módulo ‘y’ que está nuevamente dentro del paquete ‘x’.

Entonces 1) significa que aún necesita hacer referencia explícita a cualquier clase / función, etc. a través del espacio de nombres del módulo
2) significa que no

Aquí hay una comparación y contraste que muestra la diferencia

1)

matemáticas de importación

d = math.sqrt (10)

2)

de importación matemática *

d = sqrt (10)

Tenga en cuenta que puede elegir importar un símbolo específico de un módulo si lo desea, es decir

de matemáticas import sqrt
d = sqrt (10

Esto significa que Z es un módulo que reside en el paquete Y, que nuevamente es un subpaquete del Paquete X. Esto es para evitar importar todo en el Paquete principal y el subpaquete Y y solo cargar el módulo Z necesario. Esto nuevamente reduce el esfuerzo al llamar al módulo Z. si simplemente escribe “import X”, cada vez que tiene que escribir xyzmethod () para llamar a su método. Con “from xy import Z” puede simplemente usar z.method () en su lugar.