Можно ли в 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
За терпение, понимание и поддержку огромное спасибо организаторам «Красной строки», писателям, чудесным модераторам: детскому, Дине Озеровой и взрослому - Елене Чернышовой и замечательным моим читателям из Екатеринбурга, маленьким и большим❤️. #linearubra#КраснаяСтрока2025
Второй день фестиваля «Красная строка» в Екатеринбурге и нам даже наклеили номера мест на баннеры. Теперь у нас стенд номер 131👍🔥
#кучковополе#linearubra#краснаястрока#Екатеринбург
Фотографии с презентации издательства на «Красной строке» в Екатеринбурге🎆
Фотограф - Даниил Концевенко📸
#кучковополе#Екатеринбург#linearubra#КРАСНАЯСТРОКА#МЕРОПРИЯТИЯКП
Спасибо Екатеринбургу и "Красной строке" за тёплый приём и заботу 😍 А дорогим читателям – за неугасающий интерес к нашим книгам 🤗 Всегда приятно приезжать в другой город и находить людей, которые тебя знают и ждут 😊 Надеемся вернуться в следующем году! 👋
#краснаястрока#кучковополе#linearubra#мероприятияКП#Екатеринбург
Стартовала «Красная строка»🔥
Сегодня утром начала работу книжная ярмарка фестиваля «Красная строка» в Екатеринбурге! Наш стенд в Историческом сквере рядом с Плотинкой уже готов.
Ждем жителей и гостей города за покупками весь уикенд с 10 до 19👌
#кучковополе#Краснаястрока#Екатеринбург#linearubra#мероприятияКП
«Кучково поле» в Екатеринбурге🔥
Продолжаем шествие по стране✈️🛤🛣
Принимаем участие в международном книжном фестивале «Красная строка» в Екатеринбурге. Это будет первая книжная ярмарка здесь!
🟢Время:
25-27 августа с 10:00 до 19:00
🟢Место
Исторический сквер.
Посещение бесплатное.
С нетерпением ждем встречи с городом и читателями! Книг, как всегда, будет много, и за доставку платить не придётся😉. Если вы из Екатеринбурга, приходите на наш стенд, будем рады познакомиться🤗
#кучковополе#Краснаястрока#Екатеринбург#linearubra#мероприятияКП
📖 Издательства и авторы на фестивале «Красная строка»!
Продолжаем знакомство с участниками фестиваля, которые представят свои книги на ярмарке. В этом посте — несколько авторов и издательств, выпускающих детскую и художественную литературу.
— Леонид Андронов
Независимый автор. За свою жизнь писатель освоил немало профессий: сценариста, режиссёра, продюсера, драматурга, музыканта, копирайтера, издателя журнала, звукооператора, помощника режиссёра, актёра, монтажёра, менеджера по продажам, пионервожатого, грузчика. Леонид Андронов родился в Екатеринбурге, а сейчас живет Лос-Анджелесе. Первую книгу он написал в 14 лет, потом были рассказы, пьесы, сценарии и романы, изданные и поставленные в России и США.
— «Нюанс»
Обычно на фестивали подаются издательства или магазины, но есть «Нюанс»! Это новое литературное объединение современных авторов. Пробуют разные жанры и формы, любят эксперименты и к каждому читательскому сердцу подбирают особый подход.
— Издательская лаборатория «Графо»
Выпускает книги современных авторов, не присутствовавшие ранее на рынке, открывает новые имена, экспериментирует с дизайном, форматами, жанрами, материалами и смыслами. Создаёт художественные книги для детей и взрослых; просветительскую литературу, альбомы по искусству, графобуки и раскраски, календари, сувениры и подарки.
— «Корона Принт»
Издательство ООО «Корона Принт» существует с 1997 года. В настоящее время в ассортименте издательства имеется более тридцати книг, учебных пособий и рабочих тетрадей по истории Санкт-Петербурга, рассчитанных на аудиторию от четырёх лет. Новая тема, которую издательство развивает сегодня, — выпуск художественной литературы для юных читателей, рассказывающей об истории нашего города и края.
— Издательство «Розовый Жираф»
Издательство «Розовый Жираф» с 2007 года выпускает книги и для малышей, и для тех, кто только-только научился читать сам, и для уже опытных взыскательных читателей от 7 до 18 лет. Среди книг наших книг есть мировые бестселлеры, такие как «Чудо» Р. Дж. Паласио, «Битвы по средам» Г. Шмидта или серия книг великого астрофизика Стивена Хокинга и его дочери Люси о космических приключениях двух друзей. Огромную популярность у подростков завоевали наши серии «Вот эта книга!» и «4-я улица» — романы уже ставшие зарубежной классикой и запоминающиеся надолго. Одно из важнейших направлений работы издательства ― создание собственных научно-популярных книг. При поддержке Политехнического музея мы выпускаем серию для младших школьников «Библиотека Карманного Учёного».
— Илья Попенов
Поэт, прозаик, детский писатель. Родился 27 декабря 1986 года в Свердловске. Окончил факультет издательского дела и журналистики МГУП им. И. Фёдорова. Автор сказочной повести «Чудеса и тайны», сборника стихов «Счастье», рассказов для детей и взрослых. Лауреат и финалист премий «Дебют» 2002, «Заветная мечта» 2006, «Спасибо, Екатеринбург!» 2023 и других. Живёт в Екатеринбурге.
❤️Ждём вас на «Красной строке»! 22–24 августа 2025 года, Екатеринбург, Россия.
#linearubra#КраснаяСтрока#издательства2025#КраснаяСтрока2025
Дорогие друзья, погода благоволит, приходите в Исторический сквер. Ждём вас каждый день до воскресенья с 10 до 20. Напоминаем, что сегодня в 18:15 состоится презентация издательства в лектории «Прожектор»
#мероприятиякп#презентацияКП#кучковополе#Екатеринбург#linearubra#краснаястрока
❗Презентация новинок в Екатеринбурге
Завтра открывается книжная ярмарка «Красная строка», и уже вечером пройдёт встреча с директором издательства Федором Андреевым и презентация новинок этого года📚
🕐
23 августа
18:15-19:00
🏠
Лекторий #5 Прожектор
Исторический сквер, г. Екатеринбург.
Приглашаем всех желающих! Вы сможете узнать о свежайших новинках (одна из которых прибыла на ярмарку прямиком из типографии!), задать вопросы, приобрести книги по приятным ценам🤗
👌Вход бесплатный
#кучковополе#мероприятияКП#презентацияКП#linearubra#краснаястрока#Екатеринбург
🎨 Комиксы без границ: встреча с художниками Bubble Comics
На «Красной строке» в этом году — особая встреча для поклонников комиксов. С читателями и зрителями пообщаются художники Bubble Comics — крупнейшего издательства оригинальных комиксов в России, а также уралец Алексей Горбут.
Bubble Comics— авторы известных серий о русских супергероях: «Майор Гром», «Бесобой», «Инок», «Красная Фурия». Издательство также выпускает фильмы, мультфильмы, игрушки и игры.
📚Алексей Горбут — художник, автор комиксов и иллюстратор. Он известен своими работами над комиксами «Майор Гром 1939», «Вор теней», «Мир», «Злодеи», «Союзмульткомикс» и другими.
В рамках фестиваля пройдет презентация авторского проекта Алексея Горбута вместе с издательством BUBBLE!
📌 24 августа, 17:00
📌 Лекторий №1, «Магнит»
📚Евгений Яковлев — художник комиксов, иллюстратор и сценарист. Работал над проектами «Барри Полюбасов», «Зигги. Космический хомяк», «Крутиксы», а также книгами в серии Bubble Visions, включая авторский сборник «Вольф Хелльсинг» и «Русские народные сказки в комиксах».
На фестивале Евгений Яковлев встретиться с читателями и расскажет про то, как искать идеи в современном мире, почему комиксы без слов могут рассказывать захватывающие истории.!
📌 24 августа, 12:15
📌 Лекторий «Человек»
📚Джамиля Зульпикарова — художница издательства Bubble, работавшая над комиксами «Экслибриум», «Игорь Гром», «Хольт», «Болевой порог» и многими другими.
На фестивале она проведёт лекцию о том, как сохранять фокус и продуктивно работать над комиксом.
📌 24 августа, 12:00
📌 Лекторий №1, «Магнит»
23 и 24 августа у посетителей будет возможность приобрести её мерч и заказать персональные скетчи!
📍 «Красная строка», 22–24 августа
📍 Екатеринбург, Исторический сквер
#КраснаяСтрока#linearubra#комиксы#BubbleComics#КраснаяСтрока2025
Встреча с автором | Дарья Донцова
Многие из вас давно спрашивали и ждали этой встречи — и она состоится. Королева российского детектива, главная оптимистка страны и любимица миллионов читателей выступит на нашем фестивале.
«Секреты продуктивности главной оптимистки страны Дарьи Донцовой».
📌 23 августа
📌 17:30–18:30
📌 «ПРИТЯЖЕНИЕ». Главная сцена
Дарья Донцова — одна из самых издаваемых авторов России по данным Российской книжной палаты. Лауреат конкурса «Книга года», премий «Автор года», «Имя года», «Бестселлер года», имеет книжный «Оскар». В 2021 году по итогам опроса ВЦИОМ россияне в четырнадцатый раз выбрали «Писателем года» Дарью Донцову.
Сейчас на счету писательницы более 280 детективных романов, суммарный тираж которых превысил 200 миллионов экземпляров. В 2009 году занесена в Книгу рекордов России как самый плодовитый автор детективных романов (100 детективов за 10 лет).
Произведения Дарьи Донцовой переводятся и издаются в странах бывшего СССР, Западной Европе и Китае. По ее романам сняты сериалы «Любительница частного сыска Даша Васильева», «Евлампия Романова. Следствие ведет дилетант», «Виола Тараканова. В мире преступных страстей» и «Джентльмен сыска Иван Подушкин». В 2020 году «Союзмультфильм» снял мультсериал «Тайны медовой долины» по мотивам детских книг писательницы.
Также Дарья Донцова была ведущей ТВ-программ: «Раньше всех» (Первый канал), «Дешево и сердито» (Первый канал), «Ты нам подходишь» (Домашний), «Модный приговор» (Первый канал), «Я очень хочу жить» (Спас).
Зрители и читатели восхищаются неиссякаемым оптимизмом писательницы и верят, что ее советы помогают решать их проблемы. Романы автора называют «таблетками от депрессии». Многие уверены, что автограф Дарьи Донцовой приносит удачу.
На встрече с королевой российского детектива поговорим о том, как Дарья Донцова спасла от депрессии целое поколение читателей.
В программе автограф-сессия.
❤️ Ждём вас на «Красной строке»! 22–24 августа 2025 года, Екатеринбург, Россия.
#linearubra#КраснаяСтрока#программафестиваля#КраснаяСтрока2025#Екатеринбург