Многие из тех кто активно работал с Python2 несколько удивлены, почему в Python3 удобная функция reload() переехала из builtin в imp а потом и в importlib?
Ну было же удобно! А теперь лишний импорт😖
Дело в том, что начиная с Python3.3 функция reload() переписана на Python вместо Cи.
Что это нам даёт?
🔸 Такой код проще поддерживать и развивать
🔸 Python код легче читать, изучать и понимать.
Сравните это ➡️ и это ➡️.
🔸 Как результат пункта 2, проще писать свои расширения импорта. Например, пользовательский импортёр с какой-либо хитрой логикой по аналогии с импортом из zip архивов.
А есть ли у этого решения недостатки? Да, они всегда есть.
🔹 Так как это не builtin функция, её следует импортнуть перед использованием
🔹 Скорость замедлилась примерно на 5%. Очевидно, что это совершенно не критично. К тому же от версии к версии логика импорта будет оптимизироваться и ускоряться.
В самом начале файла importlib/__init__.py мы видим такой импорт:
import _imp # Just the builtin component, NOT the full Python module
То есть часть функционала по прежнему написана на Си, но достаточно низкоуровневая.
#basic
⚡️Напоминаем вам, что еще действует акция выходного дня
п/в жен Elizabeth Arden 5th Avenue, 75 мл – (3 100 руб)2 790 руб
т/в жен Elizabeth Arden White Tea, 50 мл – (2 500 руб)2 250 руб
п/в жен Kenzo Flower by Kenzo, 30 мл – (3 600 руб)3 240 руб
* п/в - парфюмерная вода
* т/в - туалетная вода
#ЖенскиеАроматы
#ElizabethArden
#Kenzo
❗️Парфюм в наличии, по Москве сможем доставить уже в понедельник
⚫️ Для заказа и по всем вопросам - @originalproduct_new
⚡️⚡️⚡️Акционные позиции на выходные⚡️⚡️⚡️
п/в жен Elizabeth Arden 5th Avenue, 75 мл – (3 100 руб)2 790 руб
т/в жен Elizabeth Arden White Tea, 50 мл – (2 500 руб)2 250 руб
п/в жен Kenzo Flower by Kenzo, 30 мл – (3 600 руб)3 240 руб
* п/в - парфюмерная вода
* т/в - туалетная вода
#ЖенскиеАроматы
#ElizabethArden
#Kenzo
Парфюм в наличии, сможем доставить в ближайшее время ❗️
⚫️ Для заказа и по всем вопросам - @originalproduct_new