@LeagueOfLegendsLatamSur · Post #1913 · 09.11.2019 г., 01:40
#TEASER Gran Final | Mundial 2019
Hashtags
TGINSIGHT SIMILAR POSTS
Изворен канал @pythonotes · Post #205 · 22 јан.
Как работает функция 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
Пребарај: #teaser
@LeagueOfLegendsLatamSur · Post #1913 · 09.11.2019 г., 01:40
#TEASER Gran Final | Mundial 2019
Hashtags
@LeagueOfLegendsLatamSur · Post #1889 · 03.11.2019 г., 20:27
#TEASER Semifinales Día 2 | Mundial 2019
Hashtags
@LeagueOfLegendsLatamSur · Post #1884 · 02.11.2019 г., 02:05
#TEASER Semifinales Día 1 | Mundial 2019
Hashtags
@LeagueOfLegendsLatamSur · Post #1857 · 30.10.2019 г., 01:37
#TEASER Cuartos de Final Día 2 | Mundial 2019
Hashtags
@LeagueOfLegendsLatamSur · Post #1853 · 27.10.2019 г., 23:40
#TEASER Cuartos de Final Día 1 | Mundial 2019
Hashtags
@LeagueOfLegendsLatamSur · Post #1836 · 20.10.2019 г., 22:12
#TEASER Grupos Día 8 | Mundial 2019
Hashtags
@LeagueOfLegendsLatamSur · Post #1828 · 19.10.2019 г., 18:20
#TEASER Grupos Día 7 | Mundial 2019
Hashtags
@LeagueOfLegendsLatamSur · Post #1807 · 18.10.2019 г., 10:17
#TEASER Grupos Día 6 | Mundial 2019
Hashtags
@LeagueOfLegendsLatamSur · Post #1806 · 18.10.2019 г., 10:15
#TEASER Grupos Día 5 | Mundial 2019
Hashtags
@LeagueOfLegendsLatamSur · Post #1788 · 15.10.2019 г., 22:45
#TEASER Grupos Día 4 | Mundial 2019
Hashtags
@LeagueOfLegendsLatamSur · Post #1787 · 15.10.2019 г., 22:43
#TEASER Grupos Día 3 | Mundial 2019
Hashtags
@LeagueOfLegendsLatamSur · Post #1786 · 15.10.2019 г., 22:43
#TEASER Grupos Día 2 | Mundial 2019
Hashtags