Как работает функция reload()?
Эта функция нужна для того, чтобы перезагрузить изменившийся код из py-файла без рестарта интерпретатора.
Дело в том, что любой импортированный модуль при повторном импорте не будет перечитывать файл. Функция импорта вернёт уже загруженный в память объект модуля. Чтобы обновить код, нужно либо перезапустить всю программу, либо использовать функцию reload()
from importlib import reload
reload(my_module)
🔸 Функция reload() принимает в качестве аргумента только объект модуля или пакета. Она не может перезагрузить класс или функцию. Только весь файл целиком!
🔸 Перезагрузка пакета перезагрузит только его файл __init__.py, если он есть. Но не вложенные модули.
🔸Она не может перезагрузить ранее не импортированный модуль.
🔸При вызове функция reload() перечитывает и перекомпилирует код в файле, создавая новые объекты. После создания новых объектов перезаписывается ранее созданный неймспейс этого модуля.
Это значит, что если где-то этот модуль импортирован через import и обращение к атрибутам происходит через неймспейс (имя) модуля, то такие атрибуты обновятся.
Если какие-либо объекты из этого модуля импортированы через from то они будут ссылаться на старые объекты.
Напишем простой модуль
# mymodule.py
x = 1
Теперь импортируем модуль и отдельно переменную х из модуля
>>> import mymodule
>>> from mymodule import x
>>> print(mymodule.x)
1
>>> print(x)
1
Не перезапуская интерпретатор вносим изменения в модуль
# mymodule.py
x = 2
Делаем перезагрузку модуля и проверяем х ещё раз
>>> reload(mymodule)
>>> print(mymodule.x)
2
>>> print(x)
1
То же самое будет если присвоить любой объект переменной (даже словарь или список)
Повторный импорт обновляет значение
>>> from mymodule import x
>>> print(x)
2
🔸Созданные инстансы классов не обновятся после перезагрузки модуля. Их придётся пересоздать.
#tricks#basic
🇨🇺🎉 Ante el Maceo ecuestre, que convoca al combate, y sus “invencibles machetes”, pasaron cientos de miles de santiagueros, mientras en los restantes municipios las plazas y espacios públicos fueron tomados por el pueblo trabajador “para demostrarle a todos los que dudan, que no traicionaremos el legado de Fidel”, expresó Roberto López Regüeiferos, trabajador de la Industria Alimentaria, aferrado a una imagen del Líder Histórico.
“Ratificamos la defensa de la unidad nacional y de nuestro proyecto socialista”, expresó Mairelis Reyes Montes de Oca, miembro del Secretariado de la Central de Trabajadores en la provincia, al tiempo que denunció el bloqueo recrudecido, “que tampoco ha podido doblegarnos”.
#LaPatriaSeDefiende
✍️ Luis Alberto Portuondo
📸 Orlando Guimerá
🙌Pinareños reafirman que somos un pueblo dignidad, memoria y futuro:
Los trabajadores pinareños bien saben de valor y sacrificio, este pueblo es la mayor riqueza de una región que distingue por sus campos verdes, por sus personas hospitalarias, que no saben rendirse, expresó el secretario general de la CTC en Pinar del Río, Rubén Lloga Sixto.
Pinareños, marchemos por la patria, ¡avancemos hacia esta tribuna, en cuadro apretado, por Cuba y todos sus hijos, por nuestros derechos, por la paz, la soberanía y contra el bloqueo, porque hoy, como ayer, mañana y siempre, #LaPatriaSeDefiende!
📸ℹ️ Tele Pinar
🇨🇺| ¡Más de 6 millones de cubanos dieron su firma por la Patria!
“Mi firma por la Patria”, concebida como ejercicio de soberanía popular frente a la escalada de agresiones contra la nación.
#LaPatriaSeDefiende
✊🏻🇨🇺||A minutos de comenzar en la histórica Tribuna Antiimperialista, el acto central por el Día Internacional de los Trabajadores, este 1 de Mayo.
#LaPatriaSeDefiende
📸ℹ️ Prensa Latina
🇨🇺 Primero de Mayo de 2026: La Patria se defiende en las calles y plazas de Cuba
“La Patria se defiende en calles y plazas, este viernes al amanecer”, aseguró la víspera el presidente Díaz-Canel. Y hoy desfila el pueblo con valor, en defensa de los derechos y principios de los revolucionarios y sindicalistas, en un país soberano y antimperialista.
¡Cuba se alza hoy por los pueblos, contra los odios que al mundo envenenan!
¡Viva el Primero de Mayo!
#LaPatriaSeDefiende@cubadebate
Este Primero de Mayo, en Cuba, millones de personas tomarán las calles con una certeza clara: la Patria no es una consigna, es una responsabilidad histórica.
Unidos por Cuba, por el derecho a decidir su futuro, el trabajo, la dignidad y la soberanía.
En un contexto de agresión económica y mediática, la unidad no es solo un valor, es una necesidad política y social.
En Cuba #LaPatriaSeDefiende
🏫🧒💓| Proteger la educación de los niños es una prioridad para Cuba. Ante cada obstáculo ocasionado por el inhumano bloqueo de los Estados Unidos, nuestra voluntad prevalece y buscamos alternativas para mantener la sonrisa que convierte cada día en nuevas oportunidades. Así, también, #LaPatriaSeDefiende
#Cuba🇨🇺 Más de medio millón de habaneros colmaron la Tribuna Antiimperialista José Martí
La jornada deviene también escenario para reiterar el llamado a enfrentar los desafíos actuales con trabajo, creatividad y cohesión, en medio de un complejo contexto económico y bajo la persistencia del bloqueo.
#LaPatriaSeDefiende
#Cuba🇨🇺 La concentración estuvo presidida por el General de Ejército Raúl Castro Ruz, líder al frente de la Revolución Cubana; el Primer Secretario del Comité Central del Partido Comunista y Presidente de la República, Miguel Díaz-Canel Bermúdez; y el comandante del Ejército Rebelde José Ramón Machado Ventura.
A la conmemoración asistieron también 827 amigos de Cuba, en representación de 38 países, así como delegaciones de 152 organizaciones sindicales y solidarias.
#LaPatriaSeDefiende