Можно ли в 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
Хэй гайз!
Сегодня первый день недели дизайна в Милане! У кого есть возможность - срочно берите билеты и летите 😝
Это одно из самых ярких, насыщенных ивэнтов в мире дизайна. Про него я неоднократно писала в блоге. Ищите посты под хэштегами #Милан#MilanDesignWeek ! ❤️
Хэй гайз!
Первая записка с недели дизайна в Милане 🥰👇
Это самое важное событие в мире дизайна! В эти дни город преображается. На площадях и во дворах итальянских палаццо появляются заворожительные инсталляции. В музеях и шоурумах проходят сотни специальных выставок, шоу, лекций и светских мероприятий 🥂
А по всему городу висят плакаты с ярким слоганом "DESIGN is MILANO is DESIGN" 🤌
Сюда съезжаются ВСЕ! Архитекторы, дизайнеры, владельцы мебельных салонов, производителей материалов, девелоперы, студенты... со всего мира 🤯
Думаю большинству архитекторов знакомо чувство гордости за свою профессию ❤ Когда люди узнают чем ты занимаешься - это вызывает у них восторг и удивление. Это же такая редкая, необычная и интересная профессия! А здесь архитектор - каждый второй 😅ощущение будто ты попал в архитектурный лагерь)) очень весело)
#милан#milandesignweek
Вернемся к Миланской неделе дизайна 🇮🇹
На какие ТРЕНДЫ я обратила внимание 👇
🌞 Уличная мебель
Именно на нее сделали акцент многие шоурумы. Дизайнеры побуждают нас больше времени проводить на свежем воздухе. В прочем, аутдор модели можно смело ставить и внутри. Outdoors is the new indoors, как говорится 😏
Мои фавориты - это яркая мебель Paola Lenti, а так же плетенные модели у MiA Collection, Chairs & More и Ames❤
👨💻Хоум-офис
Здесь без лишних объяснений... мега-эргономичные стулья и парты трансформеры - это наше всё))
🗣Fun furniture
Сильный акцент на веселость и праздничность, которая побуждает людей общаться между с собой. Это могут быть statement pieces с яркими цветами или замысловатой формой... или модели-трансформеры.
Хит этого года - белый мишка от Edra🐻❄️
👒Фэшн х Дизайн
Фэнди, Дольче, Луи, Армани... все больше модных домов углубляются в мир дизайна мебели и декора. В этом году было особенно много выставок и коллабов от ведущих фэшн хаусов. Диор х Филлип Старк, Вёрджил х Кассина... you name it.
♻️Sustainability
Думаю тренд на устойчивое развитие навсегда останется в центре внимания. Энергосбережение, переработанные материалы и социальная ответственность - это гуд!
#милан#milandesignweek#salonedelmobile
Дальше будут фотки 🙃👇👇
Хэй гайз!
Да да. Это продолжение серии постов про #milandesignweek ... Знаю, вы наверняка уже видели кучу фоток оттуда, но меня не остановить 😝
Это рум-тур по шоуруму Cassina. Какие модели вы встретите в первом зале 👇
☕ESOSOFT // Antonio Citterio
Первый проект итальянского архитектора для Кассины. В коллекцию входит: яркий модульный диван с плавным силуэтом, напоминающим дизайн 60х и кофейный столик. Основание у него такое же, как у дивана - экзоскелет (в русском есть такое слово? 😅) из аллюминия. А столешница - рифленое стекло - это ван лав!
🪑ANTROPUS // Marco Zanuso
Это кресло было создано еще в 1940-х годах, когда Занузо разрабатывал декорации для пьесы «La Famiglia Antropus». Архитектор работал с Arflex над созданием кресла, полностью обитого поролоном - мега инновейшнл материал для того времени с огромным промышленным потенциалом! Современная версия этого стула изготовлена же из полиуретановой пены, не содержащей хлорфторуглеродов ♻️ В кресле я, конечно же посидела... удобно))
🏙TRAMONTO A NEW YORK SCREEN // Gaetano Pesce
Перегородка отображает горизонт города, который никогда не спит 😴 Изделие эксклюзивное. Художник вручную заливает цветную смолу в формы в несколько этапов, слой за слоем, чтобы воспроизвести поразительные оттенки фасадов зданий. Двух одинаковых изделий не существует 😏
Кидайте 🔥 если вам нравится такой контент! ... или про стройку было интереснее?))
#милан#шоурум
ОН ОГРОМНЫЙ...
210000 м2 - выставочный комплекс
2300+ брендов - самых динамичных и креативных компаний на мировом рынке
400 тысяч посетителей... из них 370т - это люди из сферы дизайна
5000 журналистов
#salonedelmobile#milandesignweek#милан#выставка
Хэй гайз!
Продолжаю делиться впечатлениями с #milandesignweek👇
Выставочный комплекс Rho Fiera 🔥
Архитекторы из студии Фуксас предлагают вам пройтись по променаду... легкая прогулка длинной в 1500 метров 🤭
Дует свежий воздух. Над головой проносится пелена, напоминающая течение природного ландшафта... волны, кратеры, дюны и холмы ⛰
А вдоль аллеи возведены здания с зеркальными и ярко красными фасадами ❤ Здесь расположены галереи, кафешки, офисы, бизнес залы, зоны для отдыха у фонтанчиков или на газоне и... выставочные павильоны, общая площадь которых более 345 тысяч квадратных метров!!! 🤯 если кто-то не услышал... ТРИСТА СОРОК ПЯТЬ ТЫЫЫСЯЯЯЧЧ!!! ЭТО ОФИГЕТЬ КАК МНОГО!
И это всё мне еще предстоит пройти 😅
#милан#выставка#salonedelmobile
Хэээээй гайз!
Айм бэк! Вернемся к миланской неделе дизайна?) 😅
...16 станций вверх по красной ветке и вы перемещаетесь из центральной площади Дуомо до выставочного комплекса Rho Fiera. Именно здесь каждый год проходит легендарная выставка мебели и дизайна Salone del Mobile🪑
Это мой второй раз на выставке. Впервые я попала на нее в сентябре... и была поражена масштабами!!! Два гигаааантских павильона с топовым итальянским дизайном. Эмоций хватило на год вперед точно. Но... оказывается это была сжатая пост-ковидная версия салоне. И завсегдатые посетители были крайне расстроены 🤭
Куда еще больше? Посмотрим, что они придумают в следующий раз... наивно подумала я 😅
#милан#выставка#milandesignweek#salonedelmobile
Продолжение в следующих постах ❤
Хэй гайз!
Кто подписан на Arch&Stuff с первого дня наверняка помнит пост про диван Camaleonda☝
Сегодня я хочу представить вам модель дивана, которая похожа на него как Джефри Дин Морган похож на Хавьера Бардем (девочки поняли о ком я 😉)... очень!
И это...👇
SORIANA // Afra + Tobia Scarpa
Икона дизайна 69ого года! Сориана изменила облик мягкой мебели и представление об отдыхе 😉
Впервые обивка не нуждается во внутренней поддержке... ведь кресло удерживает металлическая конструкция 🏗 Дизайнеры по-максимому использовали новые возможности формирования пенополиуретана... и задали новый уровень комфорта 🚀🚀🚀
А в этом году Cassina представила кресло в необычном материале... Дэним!!! Дерзко! Хочу 🤤👖👖👖
#милан#milandesignweek#шоурум#мебель
Хэй гайз!
Это мини видео обзор шоурума Cassina, про который я вам рассказывала в предыдущем посте☝
Выставочный зал на виа Дурини вот уже 50 лет - дом идей и инноваций Cassina. 1200 метров. Теплая и гостеприимная обстановка. Глубокие, сложные цвета и материалы.
Я пришла туда в понедельник после окончания #milandesignweek и это было лучшим решением! Тихо, просторно... и не нужно изворачиваться, чтобы все красиво сфоткать 🤪
#милан#шоурум#мебель
Хэй гайз!
День 3 недели дизайна! Куда бежать?
План на сегодня: гулять по городу, штурмовать шоурумы и выставки! Проблема одна - их слишком много 💿
Засыпаю и просыпаюсь с телефоном в руках, скриню все топовые локации... Вот утреннее инспо 🫀
■ Если бы у вас был только один день в Милане - куда бы пошли?))
■ И главный вопрос: Продолжаем кружочко-марафон?💿
#милан#неделяДизайна#milandesignweek#MDW2025
P.S.
Хэй гайз!
Продолжаем тему fashion × design — сегодня про Missoni Home!
Я обожаю их фирменные яркие цвета и зигзаги, и каждый дизайн вик бегу смотреть их инсталляцию. В прошлые годы тут был настоящий ажиотаж с огромным зайцем в ткани Missoni и разноцветными бубликами-креслами.. поищу фотки! Это было супер)) 🐇🥯
В этом году — коллаборация с брендом уличной мебели Roda. Симпатично, но... ожидала большего! 🌶️
Но есть и крутая новость: в дизайн-дистрикте Брера наконец открылся первый шоурум Missoni Home! 🗝️
Дизайн шоурума разработала миланская студия LIT Studio — и тут, на мой вкуз, всё идеально сошлось! Исторические элементы вроде сводчатых потолков и ар-нуво колонн эффектно сочетаются с современными металлическими поверхностями, а трендовый бордовый потолок добавляет по-настоящему смелый акцент. Получилось bold! 🫀
■ А как вам такой стиль?
#MissoniHome#MilanDesignWeek#FashionMeetsDesign