Как работает функция 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
#trailer
❇️Days Gone
🔹 Plot
A global pandemic occurred which decimated the globe, turning millions of humans into feral cannibalistic creatures, called Freakers. The remnants of humanity have abandoned towns to seek refuge in the wilderness creating safe zones.
❇️Aftermath
Deacon St. John, a member of the Mongrels MC, is among the survivors of the epidemic. Deacon drifts through the wasteland of the Pacific Northwest, never staying in one place for too long. Deacon often takes work as a Bounty Hunter/Mercenary, offering his services in exchange for supplies. However, Deacon learns that there is a price on his head adding to his list of enemies.
@fluencyinenglish
@ieltsstrategies
#trailer
❇️GLASS Trailer (2019)
@fluencyinenglish
Security guard David Dunn uses his supernatural abilities to track Kevin Wendell Crumb, a disturbed man who has 23 personalities.
@fluencyinenglish
In the trailer (via THR), Sarah Paulson (American Horror Story series) appears as a psychiatrist who describes herself as someone that specializes in “individuals who believe they are superheroes.” Present among her patients at a Philadelphia asylum are Bruce Willis’ David Dunn, Samuel L. Jackson’s Elijah Price, aka Mr. Glass, and James McAvoy’s Kevin Wendell Crumb, aka The Horde.
@fluencyinenglish
#trailer
❇️The passage
@fluencyinenglish
The plot:
🔹When a botched U.S. government experiment turns a group of death row inmates into highly infectious vampires, an orphan girl might be the only person able to stop the ensuing crisis.
@fluencyinenglish
#trailer
❇️How It Ends [HD] | Netflix
The plot: In the midst of an apocalypse, a man struggles to reach his pregnant wife, who is thousands of miles away.
@fluencyinenglish
@ieltsstrategies
Black Mirror Season 7 teaser just dropped
This globally popular Netflix series has drawn millions of viewers with its chilling, dystopian stories about the dark side of technology.
Past episodes like ‘Bandersnatch’ became worldwide hits, and this new season promises more twists and turns.
@Viral_Today / #trailer
🌐 Warner Bros. has released the first trailer for A Minecraft Movie, which hits theaters in April 2025 and stars Jack Black and Jason Momoa.
@Viral_Today / #trailer