Можно ли в Python создавать бинарные файлы? Конечно можно.
Для этого в Python есть следующие инструменты:
▫️ тип данных bytes и bytearray
▫️ открытие файла в режиме wb (write binary) или rb (read binary)
▫️ модуль struct
Про модуль struct поговорим в первую очередь.
Файл в формате JSON или Yaml внутри себя содержит разметку данных. Всегда можно определить где список начался а где закончился. Где записана строка а где словарь. То есть формат записи данных содержит в себе элементы разметки данных.
В binary-файле данные не имеют визуальной разметки. Это просто байты, записанные один за другим. Правила записи и чтения находятся вне файла.
Модуль struct как раз и помогает с организацией данных в таком файле с помощью определения форматов записи для разных частей файла.
Модуль struct преобразует Python-объекты в массив байт, готовый к записи в файл и имеющий определённый вид.
Для этого всегда следует указывать формат преобразования (или, как оно здесь называется - запаковки).
Формат нужен для того, чтобы выделить достаточное количество байт для записи конкретного типа объекта. В последствии с помощью того же формата будет производиться чтение.
При этом следует помнить что мы говорим о типах языка С а не Python.
Именно формат определяет, что записано в конкретном месте файла, число, строка или что-то еще.
Вот какие токены формата у нас есть.
Помимо этого, первым символом можно указать порядок байтов. На разных системах одни и те же типы данных могут записываться по-разному, поэтому желательно указать конкретный способ из доступных. Если этого не сделать, то используется символ '@', то есть нативный для текущей системы.
В строке формата мы пишем в каком порядке и какие типы собираемся преобразовать в байты.
Запакуем в байты простое число, токен "i".
>>> import struct
>>> struct.pack('=i', 10)
b'\n\x00\x00\x00'
Теперь несколько float, при этом нужно передавать элементы не массивом а последовательностью аргументов.
>>> struct.pack('=fff', 1.0, 2.5, 4.1)
b'\x00\x00\x80?\x00\x00 @33\x83@'
Вместо нескольких токенов можно просто указать нужное количество элементов перед одним токеном, результат будет тот же.
>>> struct.pack('=3f', 1.0, 2.5, 4.1)
b'\x00\x00\x80?\x00\x00 @33\x83@'
Теперь запакуем разные типы
>>> data = struct.pack('=fiQ', 1.0, 4, 100500)
я запаковал типы float, int и unsigned long long (очень большой int, на 8 байт)
b'\x00\x00\x80?\x04\x00\x00...'
Распаковка происходит аналогично, но нужно указать тот же формат, который использовался при запаковке. Результат возвращается всегда в виде кортежа.
>>> struct.unpack('=fiQ', data)
(1.0, 4, 100500)
Как видите, ничего страшного!
#lib#basic
Увеличение рынка складской недвижимости Узбекистана в 50 раз!😱
Мы уже говорили в своих статьях о необходимости такого роста🏘️
Но как и всегда, надо говорить в первую очередь о классе и качестве таких складов🏛️
#AXELOT#UZBEKISTAN#WAREHOUSE
Центральная Азия. Дефицит площадей, срок окупаемости, тарифы 🇺🇿🇰🇬🇰🇿
Текущий дефицит логистической недвижимости в Центральной Азии оценивается примерно в 20 млн квадратных метров. Такие данные озвучил управляющий партнер IBC Global Станислав Ахмедзянов, передает Logirus.
⚡️Сравнение окупаемости и доходности складских площадей показательна
Центральная Азия
✔️Срок окупаемости - 5-6 лет;
✔️Доходность - 17-20%
Евросоюз:
✔️Срок окупаемости - 10-13 лет;
✔️Доходность - 6,5-10%
А ставки тоже удивляют😱
Так, 🇰🇬Кыргызстане тарифы на 37% выше, чем в 🇷🇺России. В 🇺🇿Узбекистане и 🇰🇿Казахстане аренда склада обойдется дороже, чем в 🇦🇪ОАЭ, где она составляет около $135 за квадратный метр в год.
#LOGISTICS#CENTRALASIA#WAREHOUSE
Аренда складов в Центральной Азии оказалась дороже, чем в Москве👀
🇰🇿Казахстан, стоимость аренды складов класса «А» в среднем
выросла на 35,3% — со $113 до $153 за квадратный метр.
🇺🇿Узбекистан, средний показатель достигает $156 за квадратный метр.
🇰🇬Кыргызстан, средняя стоимость на аренду складов класса «B» за год увеличился на 20% — с $60 до $72 за квадратный метр
Также, по данным NF Group, вакантность складов в Казахстане сейчас составляет 1,6%, в Кыргызстане — 1,1%, в Таджикистане — 1,1%, в Узбекистане — снизилась с 4,5% до 0%.
#LOGISTICS#WAREHOUSE#CENTRALASIA
«Balton Trading Asia вырывается вперед»
Интересное интервью Директора проектов департамента управления строительством консалтинговой компании CMWP Андрея Шмелькова.
Основные тезисы интервью:
✔️Основные драйверы роста складской недвижимости в Узбекистане;
✔️ Строительство склада класса A Balton Trading Asia;
✔️Соответствие «зеленым» стандартам.
#WAREHOUSE#UZBEKISTAN#BALTONTRADINGASIA
Логопарк за $20 млн. В Кыргызстане🇰🇬
В Чуйской области планируется построить логистический парк площадью 35 000 м2 💪
Сроки строительства и ввода в эксплуатации не уточняются🤔
#LOGISTIC#KYRGYZSTAN#WAREHOUSE
AXELOT x TOIMART🇰🇿 Новый склад и новые бизнес-процессы🆕
Toimart – это сеть супермаркетов, входящая в состав Группы компаний Sabyrzhan Group, которая на протяжении 25 лет успешно работает в сфере оптовых и розничных продаж товаров народного потребления на территории Республики Казахстан
В рамках дальнейшего развития бизнеса руководство компании запланировало объединить складские подразделения разных направлений бизнеса, находящиеся в разных частях города Алматы, на одной площадке. Проектируемый склад будет иметь площадь более 14.000 кв.м
Примененные системы хранения, разработанная логика и стратегия размещения товаров, а также описанные технологические процессы позволят компании Toimart не только разместить все товары с нескольких площадок на одном складе, но и организовать пространство таким образом, чтобы доступные резервы площади могли быть использованы с различным функциональным назначением🔝
Концепция работы нового склада полностью соответствует требованиям для внедрения WMS.
#AXELOT#TOIMART#KAZAKHSTAN#WAREHOUSE#Склад#Казахстан#Ритейл
GDM выполнила переход на ультрасовременную AXELOT WMS X5 🇬🇪
Много лет компания GDM сотрудничает с AXELOT в части развития логистики. Летом 2023 года компании завершили пилотный проект внедрения #AXELOTWMS на площадке в Кутаиси. Сразу после запуска системы в эксплуатацию начался проект тиражирования решения на складе в Тбилиси.
Одной из основных задач проекта был безболезненный переход с уже знакомым функционалом, а также настройка реализация дополнительных фишек, которые так необходимы развитой логистики GDM😎
В итоге у компании GDM появился современный инструмент для оптимизации логистики и развития бизнеса🔝
#AXELOT#GDM#GEORGIA#WMS#WAREHOUSE
Как устроен Balton Trading Asia: взгляд изнутри
Представители Balton Trading Asia, одного из ведущих игроков рынка FMCG-дистрибуции в Узбекистане показали и рассказали о своём новом складе класса "А+", а также обсудили:
✔️ Построение эффективной
логистики;
✔️ Что такое 3PL;
✔️ Что такое дистрибуция;
✔️ Как современные системы
WMS и TMS оптимизируют
ключевые процессы
А также рассказали о том, для кого важны услуги логистики и хранения
Все это в новом ролике на gazeta.uz
#LOGISTICS#BALTONTRADINGASIA#UZBEKISTAN#DISTRIBUTION#3PL#WAREHOUSE
"И Нарикала здесь стоит,
Как память прошлых тяжких бед,
Твою главу венчая сединой."
Как все уже догадались, следующий город – Тбилиси.
Тбилиси – это любовь с первого взгляда и сегодня будет много про любовь:)
Знакомство между #AXELOT с Грузией началось в далеком 2014 году, в этот год мы стартовали проект по автоматизации склада компании Duty Free Aliance. 5000 SKU из ассортимента duty-free (косметика, парфюмерия, алкоголь, табачные и кондитерские изделия) на складе площадью 2600м2, но то был склад в г.Поти, поэтому речь сегодня пойдет не про него
В 2016 году прилетев из Баку в Тбилиси произошла встреча, которая перевернула жизнь двух компаний, с одной стороны были жизни сотрудников #AXELOT, с другой стороны были вся привычная жизнь логистов компании#GDMco.
Первым «под хирургический скальпель оптимизации» в нашем лице лег центральный склад в г. Тбилиси. Склад общей площадью 8000м2, на котором хранилось всё: от сахара и майонеза до алкоголя и сигарет, требовал глубинного реинжиниринга бизнес-процессов, топологии, графика работы, техники безопасности и тотальной цифровизации.
Естественно, что начали мы с логистического консалтинга или технологического проектирования. Мы проанализировали гигабайты информации по статистике товародвижения, спроектировали 3 концепции развития текущего складского помещения, разработали под выбранную концепцию все технологические бизнес-процессы, рассчитали количество персонала и техники.
Дальше само собой мы приступили к автоматизации. Над проектом работало 4 команды: команда логистического консалтинга (в части оптимизации БП), команда WMS, команда Заказчика (GDMco) и команда подрядчика по ERP (чудесная компания BDO).
Склад был запущен в эксплуатацию в июне 2018 года. В результате проекта все бизнес-процессы были стандартизированы и автоматизированы, склад из «черного ящика» превратился в прозрачный, понятный и прогнозируемый объект.
Что же делать дальше? Естественно тиражировать опыт лучшего склада на другие складские объекты компании. В перспективе было два объекта: Кутаиси и Батуми. Батуми, к сожалению проектной команды, был оставлен на февраль (что может быть лучше моря, пальм и нашей WMS среди зимы?:)). Склад в Кутаиси мы запустили за один месяца, В Батуми за 3 недели.
Познав лучшее, к хорошему уже не вернёшься. Поэтому в 2020 году было принято стратегическое решение – автоматизировать бизнес-процессы перевозок с использованием AXELOT TMS. Что ж решение принято, отступать некуда. В 2020 кроме мобильного клиента на грузинском у нас появился опыт работы с грузинской картографией.
Что же про 2021? Об этом чуть позже
Если хотите оптимизировать логистические процессы своей компании обращайтесь в AXELOT - начните использовать наш опыт уже сегодня!
#wms#TMS#axelotwms#managementsystem#warehouse#warehousemanagementsystem#axelot
https://www.instagram.com/p/CKnrHFTHnq_/?utm_source=ig_web_copy_link