Вторая по частоте future-функция, которую я использовал, это абсолютный импорт
from __future__ import absolute_import
Что она делает?
Изменения, которые вносит эта инъекция описаны в PEP328
Покажу простой пример.
Допустим, есть такой пакет:
/my_package
/__init__.py
/main.py
/string.py
Смотрим код в my_package/main.py
# main.py
import string
Простой пример готов) Вопрос в том, какой модуль импортируется в данном случае? Есть два варианта:
1. модуль в моём пакете my_package.string
2. стандартный модуль string
И вот тут вступает в дело приоритет импортов. В Python2 порядок следующий: помимо иных источников, раньше ищется модуль внутри текущего пакета, а потом в стандартных библиотеках. Таким образом мы импортнём my_package.string.
Но в Python3 это поведение изменилось. Если мы указываем просто имя пакета, то ищется именно такой модуль, игнорируя имена в текущем пакете. Если мы хотим импортнуть именно подмодуль из нашего пакета то, мы должны теперь явно это указывать.
from my_package import string
или относительный импорт, но с указанием пути относительно текущего модуля main
from . import string
Еще одной неоднозначностью меньше 😎
Подробней про импорты здесь:
https://docs.python.org/3/tutorial/modules.html
#2to3#pep#basic
Dr. Roberto Morales Ojeda
(@DrRobertoMOjeda) en X
En la sede del Comité Central conmemoramos el Día de la Rebeldía Nacional teniendo como brújula el legado del Comandante en Jefe y la exhortación de @DiazCanelB a trabajar por hacer de cada día un #26deJulio.También entregamos el carnet a nuevos miembros del PCC y la UJC
https://x.com/DrRobertoMOjeda/status/1947718755200733410
Este sábado en el municipio de #Holguín fueron inaguradas varias obras en saludo al Día de la Rebeldía Nacional el próximo #26deJulio, cuando se cumplen 71 años del asalto a los Cuarteles Moncada y Carlos Manuel de Céspedes.
El recorrido contó con la presencia de Osmani Viñals García, primer secretario del Comité Municipal del PCC en Holguín, Rafael Antonio Brown Sutherland, presidente de la Asamblea Municipal del Poder Popular y Yunior Torres Almaguer, intendente municipal.
En el reparto Luz del propio consejo popular fueron remozados los consultorios 11,12,13 y 14 del médico de la familia donde se trabajó en la impermeabilización, cambio de carpintería, pintura, resane de muros, reparación de la red hidráulica sanitaria, con una inversión valorada en los 2.1 millones de pesos.
El reparto Piedra Blanca del consejo popular Vista Alegre fue testigo de la inauguración del consultorio 1 que atiende a una población aproximada de 1200 pacientes. En la obra se ejecutó un presupuesto de 3468.1 millones de pesos donde se cambió la carpintería, hidrosanitaria, la electricidad, pintura y enchapes.
Los habitantes del reparto La Quinta perteneciente a la circunscripción 26 del consejo popular Vista Alegre agradecieron el nuevo taller de servicios técnicos donde se trabajó en el enchape, cambio de carpintería, cubierta y pintura.
En la circunscripción 31 fueron entregadas el mes pasado a madres con tres hijos y otros casos especiales 3 viviendas en la calle 14, obra ejecutada por la constructora DOMUS. El periplo concluyó en el combinado deportivo Jesús Manuel Feliú Leyva donde se reanimó y pintó el gimnasio de pesa y gimnasia rítmica.
✒️ y 📸 John Alex Fernández Leyva
El municipio de #Moa conquistó la sede del acto provincial por el #26deJulio en conmemoración a los asaltos a los cuarteles Moncada y Carlos Manuel de Céspedes, el 26 de julio de 1953.
A 71 años de aquellos sucesos acaecidos en Santiago de Cuba y Bayamo la fecha se conmemora en fraterna emulación entre los diferentes territorios para obtener la sede.
La emulación provincial otorgó la condición de Destacados a los municipios de Rafael Freyre y Gibara, mientras los municipios de Sagua de Tánamo y #Holguín recibieron también el Reconocimiento.
La noticia se conoció en encuentro entre las autoridades y la prensa en el territorio.
Felicidades a los moenses!
📸 tomada de Internet