Как работает функция 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
⬛AXELOT помог Toimart организовать процессы на новом складе
Специалисты компании AXELOT разработали бизнес-процессы для сети супермаркетов товаров народного потребления.
Специалисты AXELOT разработали бизнес-процессы и предложили системы хранения, которые позволяют максимально эффективно использовать пространство нового складского комплекса компании Toimart.
Результат — товары с нескольких площадок размещены “под одной крышей”, пространство используется эффективно, склад готов к внедрению WMS🚀
Подробнее о проекте читайте в статье❗
#AXELOT#Toimart#WMS#автоматизация#склад#логистика#ритейл#оптимизация
AXELOT x TOIMART🇰🇿 Новый склад и новые бизнес-процессы🆕
Toimart – это сеть супермаркетов, входящая в состав Группы компаний Sabyrzhan Group, которая на протяжении 25 лет успешно работает в сфере оптовых и розничных продаж товаров народного потребления на территории Республики Казахстан
В рамках дальнейшего развития бизнеса руководство компании запланировало объединить складские подразделения разных направлений бизнеса, находящиеся в разных частях города Алматы, на одной площадке. Проектируемый склад будет иметь площадь более 14.000 кв.м
Примененные системы хранения, разработанная логика и стратегия размещения товаров, а также описанные технологические процессы позволят компании Toimart не только разместить все товары с нескольких площадок на одном складе, но и организовать пространство таким образом, чтобы доступные резервы площади могли быть использованы с различным функциональным назначением🔝
Концепция работы нового склада полностью соответствует требованиям для внедрения WMS.
#AXELOT#TOIMART#KAZAKHSTAN#WAREHOUSE#Склад#Казахстан#Ритейл
🌟 AXELOT преобразил новый склад Toimart!
✅ Компания AXELOT успешно завершила комплексный проект нового склада сети супермаркетов Toimart (ГК «Sabyrzhan Group») площадью 14 000 кв. м с 9 000 SKU!
На первом этапе было выполнено технологическое проектирования нового склада с оптимальными решениями и процессами.
Ранее мы уже рассказывали про данный проект: AXELOT x TOIMART🇰🇿 Новый склад и новые бизнес-процессы🆕
В рамках этапа автоматизации были применены ключевые решения AXELOT WMS:
🔴Автоматическое определение зоны размещения товара (кондиционная продукция, брак, возврат поставщику);
🔴Оптимизация размещения с учётом востребованности товаров (зоны High, Medium, Low);
🔴Автоматизация инвентаризации по чёткому алгоритму (циклическая, внеплановая, с открытыми остатками);
🔴Автоматическое перемещение между зонами (например, в зону утилизации при обнаружении брака);
🔴Автоматическое создание партий при приёмке с фиксацией сроков годности;
🔴Автоматическое пополнение запасов при достижении минимального количества;
🔴Планирование отбора товаров с группировкой по маршрутам и типам.
🚀 Достигнутые результаты:
✔️товар с нескольких площадок размещён на одном складе;
✔️приёмка товара стала проще и точнее;
✔️отгрузка ускорилась в разы;
✔️сократилось время обработки продукции;
✔️уменьшилось количество ошибок;
✔️персонал тратит меньше времени на рутинные задачи.
✔️обеспечена интеграция AXELOT WMS с существующими корпоративными системами.
📈 Проект доказал, что автоматизация склада с помощью AXELOT WMS — это ключ к повышению эффективности логистических процессов!
#AXELOT#Toimart#Казахстан#логистика#автоматизация#склад#WMS#технологическоепроектирование#оптимизацияпроцессов#эффективность