Как работает функция 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
📎Le Premier ministre tchèque Babis a été chargé de faire pression sur le Kazakhstan afin qu'il rompe ses relations diplomatiques avec la #Russie.
Babis affirme avoir reçu ce document de certains responsables, dont l'ancien ministre des Affaires étrangères Jan Lipavsky. C’est ce qu’il a déclaré sur TV Nova.
RT en français • Osez questionner !
🇷🇺🇺🇸Diplomatie : tensions juridiques entre les États-Unis et la #Russie
▪️Depuis 2023, des enfants de diplomates russes nés aux États-Unis se sont vu attribuer la citoyenneté américaine sans que les familles en aient fait la demande, au titre du « droit du sol ».
▪️Or, selon les règles en vigueur, les enfants de diplomates ne relèvent pas pleinement de la juridiction du pays hôte et ne peuvent bénéficier automatiquement de ce droit. Cette interprétation est appuyée par des textes juridiques américains (Code fédéral, directives migratoires) et par une décision de la Cour suprême de 1898 excluant explicitement ces situations.
▪️Les autorités russes estiment que cette pratique constitue une violation des conventions internationales, notamment celles de Vienne et la convention bilatérale de 1964 sur les relations consulaires, qui garantissent immunités et protections au personnel et aux familles.
▪️Elles y voient également un risque de pression indirecte, l’attribution de citoyenneté pouvant, selon elles, ouvrir la voie à des mécanismes juridiques ou administratifs supplémentaires à l’égard des familles concernées.
▪️Cette situation intervient dans un contexte plus large : durcissement de la politique migratoire américaine, expulsions accrues, contrôles renforcés, ainsi que refus de visas pour certains représentants lors d’événements à l’ONU.
▪️Pourtant, aucune modification récente de la Constitution américaine ni des accords bilatéraux n’a été signalée pour justifier un tel changement de pratique.
▪️La partie russe indique ne pas reconnaître ces attributions de citoyenneté et demande des clarifications officielles au cas par cas.
📞 « Votre enfant est citoyen des États-Unis […] et vous ne pouvez pas refuser ce statut. »
RT en français • Osez questionner !
🇷🇺⚡️117 drones ont été abattus au-dessus des régions de #Russie dans la nuit du 3 au 4 mai, rapporte le ministère russe de la Défense.
RT en français • Osez questionner !
🇷🇺⚡️334 drones ont été abattus au-dessus des régions de #Russie dans la nuit du 2 au 3 mai, rapporte le ministère russe de la Défense.
RT en français • Osez questionner !
🇷🇺⚡️215 drones ont été abattus au-dessus des régions de #Russie dans la nuit du 1er au 2 mai, rapporte le ministère russe de la Défense.
RT en français • Osez questionner !
🇷🇺⚡️141 drones ont été abattus au-dessus des régions de #Russie dans la nuit du 30 avril au 1er mai, rapporte le ministère russe de la Défense.
RT en français • Osez questionner !
💬Kaja Kallas, la chef de la diplomatie européenne, a déclaré que le bloc ne devait ni s’humilier ni supplier la #Russie d’engager des discussions avec lui.
RT en français • Osez questionner !
🇷🇺189 drones ont été abattus au-dessus des régions de #Russie dans la nuit du 29 au 30 avril, rapporte le ministère russe de la Défense.
RT en français • Osez questionner !
🇷🇺98 drones ukrainiens ont été abattus au-dessus des régions de #Russie dans la nuit du 28 au 29 avril, rapporte le ministère russe de la Défense.
RT en français • Osez questionner !
🇷🇺🇪🇬 Le conseiller du président de la #Russie, Nikolaï Patrouchev, a tenu au Caire des réunions consacrées à la coopération russo-égyptienne dans le domaine maritime.
🟢 Avec Ashraf Salem Zaher, ministre égyptien de la Défense et de l’Industrie militaire, il a discuté des questions de coopération militaro-technique.
🟢 Lors de son entretien avec Faiza Abou el-Naga, conseiller du président égyptien, Patrouchev a évoqué la stabilité stratégique dans les océans.
Crédit photos : Ambassade de Russie en Égypte
RT en français • Osez questionner !
❗️#Russie : à Touapsé, moyens renforcés après une marée noire liée à une attaque de drones
Les autorités ont porté à 360 le nombre d’intervenants mobilisés pour éliminer la marée noire de produits pétroliers à Touapsé, avec plus de 60 équipements déployés. Selon Dmitri Peskov, le pétrole visé était destiné à l’exportation, et ces attaques aggravent les tensions sur les marchés mondiaux.
RT en français • Osez questionner !
🇷🇺 186 drones ukrainiens ont été abattus au-dessus de régions de la #Russie, dans la nuit du 27 au 28 avril, rapporte le ministère russe de la Défense.
RT en français • Osez questionner !