Как работает функция 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
ОСНОВНЫЕ ДОСТИЖЕНИЯ ЛЕКАРСТВННОЙ ТЕРАПИИ ПО ИТОГАМ 2022 ГОДА
Уважаемые коллеги!
Рады сообщить Вам, что 26 января 2023 г. состоится научно-практическая школа "Основные достижения лекарственной терапии по итогам 2022 года".
1️⃣Первое мероприятие нового года!
👥Участие в живом формате!
Обсудим с Вами следующие темы:
📌 Что бы я хотел видеть в клинических рекомендациях по лечению рака легкого?
📌 Распространенный уротелиальный рак – алгоритм выбора тактики лечения.
📌 Тройные комбинации в лечении мГЧРПЖ. Три – это много или мало?
📌 Значимость комбинированной терапии новыми антиандрогенами метастатического гормоночувствительного рака предстательной железы.
📌 Вопросы к экспертам: рак молочной железы, известные мишени и новые решения.
📌 Колоректальный рак – выбор тактики лечения, прогноз.
📍Место проведения мероприятия: актовый зал МКНЦ им А.С. Логинова ДЗМ, 10 корпус (ш. Энтузиастов, 86, стр. 6).
⏳Время проведения: с 16:00 до 18:30.
📲Регистрация на сайте:https://medx.pro/
#МОО
#МКНЦимЛогинова
#medxpro
Уважаемые коллеги!
С четверга в МКНЦ им. А.С. Логинова проходит 49-я научная сессии ЦНИИГ "Гастроэнтерология: настоящее и будущее" .
Завтра нас ждет очень интересный день, полностью посвященный вопросам онкологии!
❗️Мероприятие в гибридном формате, но стоит ли объяснять разницу между обсуждением с ведущими экспертами лицом к лицу в новом корпусе МКНЦ и наблюдением откуда-то издалека, сквозь холодное стекло монитора...
🛑Официальный сайт - гастросессия.рф
🛑Адрес: МКНЦ им. А.С. Логинова, ул. Новогиреевская, д.1 / Шоссе Энтузиастов, д. 86
🛑Онлайн трансляция на сайте MedX.pro.
#МосковскоеОнкологичскоеОбщество
#МКНЦ
#Oncology
#MedXpro
Программа мероприятия ⤵️⤵️⤵️
⚡️⚡️⚡️Уважаемые коллеги! ⚡️⚡️⚡️
28 февраля 2023 года в МКНЦ им. А.С. Логинова пройдет конференция "РАК ПРЕДСТАТЕЛЬНОЙ ЖЕЛЕЗЫ – НОВЫЕ ВЫЗОВЫ".
У каждого участника будет исключительная возможность очной дискуссии с экспертами в данной области.
Уверены, будет очень интересно!
📆Дата мероприятия: 28 февраля 2023 г.
⏰Время проведения: 16:00 – 18:30
📍Место проведения: МКНЦ им. А.С. Логинова, г. Москва, шоссе
Энтузиастов, д. 86, актовый зал (10 корпус)
📲 Регистрация: на месте или на сайте MedX.pro
#МОО
#MedXpro
#МКНЦимЛогинова
#AstraZeneca
#JohnsonJohnson
#JanssenPharmaceutica
#AstellasPharma
Программа конференции 👇👇👇