TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #241 · 5 мај

Можно ли в 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

Hashtags

Резултати

Пронајдени 1 слични објави

Пребарај: #atomenergiyasi

当前筛选 #atomenergiyasi清除筛选
ТФ НИЯУ МИФИ

@mephi_life · Post #3977 · 14.08.2024 г., 06:23

🌐Выпускница Ташкентского филиала НИЯУ МИФИ отправилась на Северный полюс 13 августа из Мурманска выпускница Ташкентского филиала НИЯУ МИФИ Шахзода Ёкубова отправилась в V арктическую экспедицию «Ледокол знаний – 2024» на атомном ледоколе, став частью экспедиции в роли исследователя и эксперта. Во время северного путешествия она будет изучать космические лучи и читать лекции участникам экспедиции об элементарных частицах 🔄 Арктическая экспедиция «Ледокол знаний», организованная при поддержке госкорпорации «Росатом» и Российского общества «Знание», в этом году впервые стала международной, приняв на борт атомного ледокола «50 лет Победы» команду участников из 15 стран мира. «С весны этого года я была в большом ожидании этой поездки. Наверное, полное осознание того, что я на Северном полюсе, придет тогда, когда уже окажусь на месте. Основная моя миссия - изучить космические лучи, провести лекцию для школьников и познакомиться с новыми людьми. Еду туда в роли эксперта в области ядерной физики и технологий, буду рассказывать другим участникам об элементарных частицах», - рассказала Шахзода перед отъездом. 🌐Moskva muhandislik fizikasi instituti “Milliy tadqiqot yadro universiteti”ning Toshkentdagi filiali bitiruvchisi Shimoliy qutbga yo‘l oldi 13-avgust kuni Murmansk shahridan MMFI MTYUning Toshkendagi filiali bitiruvchisi Shahzoda Yoqubova “Bilimlar muzyorari – 2024” V Arktika ekspeditsiyasiga atom muzyorarida ekspeditsiyaning bir qismi bo‘lgan holda tadqiqotchi va ekspert sifatida yo‘l oldi. Shimoliyga sayohat davomida u kosmik nurlarni o‘rganadi va ekspeditsiya ishtirokchilariga elementar zarralar haqida ma’ruzalar o‘qiydi 🔄 “Rosatom” davlat korporatsiyasi va “Bilim” Rossiya jamiyati ko‘magida tashkil etilgan “Bilimlar muzyorari” arktika ekspeditsiyasi, “G‘alabaning 50 yilligi” atom muzyorari bortiga 15 mamlakatdan ishtirokchilar jamoasini qabul qilgan holda ushbu yilda ilk bor xalqaro maqomini oldi. “Bu yilning bahoridan boshlab ushbu safarni katta sabrsizlik bilan kutgandim. Ehtimol, Shimoliy qutbda ekanligimni to‘liq anglash joyga chiqqanimdan keyin yuz beradi. Asosiy vazifam - kosmik nurlarni o‘rganish, maktab o‘quvchilari uchun ma’ruza o‘tkazish va yangi odamlar bilan tanishishdir. Men u yerga yadroviy fizika va texnologiyalar bo‘yicha ekspert sifatida boraman va boshqa ishtirokchilarga elementar zarralar haqida ma’lumot beraman", - dedi Shahzoda yo‘l oldidan. Чистая Энергия ӏ Sof Energiya 🇺🇿 - все про безуглеродную энергетику Узбекистана и мировые новости, подписывайтесь и будьте в курсе событий. @clearenergy#clearenergy#atomenergiyasi#атомнаяэнергетика