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

Резултати

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

Пребарај: #toshkent2029

当前筛选 #toshkent2029清除筛选
OlympicUz

@OlympicUz · Post #41033 · 31.10.2025 г., 16:40

⚡️Toshkent — IV Osiyo yoshlar oʻyinlari mezboni Bahraynda oʻtkazilgan Osiyo Olimpiya Kengashining 101-Ijroiya qoʻmitasi yigʻilishida Toshkent 2029-yilgi IV Osiyo yoshlar oʻyinlariga mezbonlik qilishi haqida qaror qabul qilindi. Bugun III Osiyo yoshlar oʻyinlarining tantanali yopilish marosimida bu haqida rasman e’lon qilindi. Demak, Oʻzbekiston yana 4 yildan keyin qit’amizning eng kuchli yosh sportchilarini oʻzida jamlaydi. — ⚡️Ташкент примет IV Азиатские юношеские игры Исполком Олимпийского совета Азии, заседание которого прошло в Бахрейне, принял решение доверить Ташкенту проведение IV Азиатских юношеских игр 2029 года. Об этом официально объявили сегодня на торжественной церемонии закрытия III Азиатских юношеских игр. Таким образом, уже через четыре года Узбекистан станет площадкой для сильнейших молодых спортсменов Азиатского континента. #Toshkent2029 👉@OlympicUz olympic.uz I YouTube I Instagram I

OlympicUz

@OlympicUz · Post #41056 · 31.10.2025 г., 21:18

Xayr, Bahrayn! Salom, Toshkent! Bahraynda III Osiyo yoshlar oʻyinlarining tantanali yopilish marosimi boʻlib oʻtdi. Ahamiyatlisi, mazkur tadbirda Toshkent 2029-yil IV Osiyo yoshlar oʻyinlarini qabul qilishi rasman e’lon qilindi. Marosimda Sport vaziri oʻrinbosari Shahrullo Mahmudov, Toshkent shahar hokimi oʻrinbosari Durdona Rahimova, shuningdek, MOQ rahbariyati ishtirok etdi. Tadbirda mamlakatimiz nomidan Osiyo Olimpiya kengashi (OOK) vitse-prezidenti, Oʻzbekiston MOQ raisining birinchi oʻrinbosari Otabek Umarov Oʻyinlarning kelgusi mezboni sifatida rasmiylardan OOKning bayrogʻini qabul qilib oldi. — Прощай, Бахрейн! Здравствуй, Ташкент! В Бахрейне состоялась торжественная церемония закрытия III Азиатских юношеских игр. Примечательно, что в ходе этого мероприятия было официально объявлено, что Ташкент примет IV Азиатские юношеские игры в 2029 году. В церемонии приняли участие заместитель Министра спорта Шахрулло Махмудов, заместитель хокима города Ташкента Дурдона Рахимова, а также руководство Национального Олимпийского комитета. От имени нашей страны в качестве будущего хозяина Игр в мероприятии участвовал вице-президент Олимпийского совета Азии, первый заместитель председателя Национального Олимпийского комитета Узбекистана Отaбек Умаров, который принял флаг ОСА из рук официальных представителей. #Bahrayn2025#Toshkent2029 👉@OlympicUz olympic.uz I YouTube I Instagram I

OlympicUz

@OlympicUz · Post #41034 · 31.10.2025 г., 16:54

Osiyo Olimpiya kengashi (OOK) vitse-prezidenti, Oʻzbekiston MOQ raisining birinchi oʻrinbosari Otabek Umarov OOK bayrogʻini qabul qildi — Вице-президент Олимпийского совета Азии (ОСА), первый заместитель председателя Национального Олимпийского комитета Узбекистана Отабек Умаров принял флаг ОСА #Bahrayn2025#Toshkent2029 👉@OlympicUz olympic.uz I YouTube I Instagram I

OlympicUz

@OlympicUz · Post #42652 · 26.01.2026 г., 10:20

Toshkentda Osiyo Olimpiya kengashining 46-Bosh Assambleyasi bo‘lib o‘tdi Poytaxtimiz Toshkent shahrida Osiyo Olimpiya kengashining 46-Bosh Assambleyasi bo‘lib o‘tdi. Nufuzli anjumanda Osiyo Olimpiya kengashi va unga a’zo Milliy Olimpiya qo‘mitalari vakillari, Xalqaro Olimpiya qo‘mitasi hamda yetakchi sport tashkilotlarining rahbarlari, shuningdek, O‘zbekiston Respublikasi Sport vazirligi, Milliy Olimpiya va Paralimpiya qo‘mitalari rahbariyati ishtirok etdi. — В Ташкенте состоялась 46-я Генеральная Ассамблея Олимпийского совета Азии В Ташкенте прошла 46-я Генеральная Ассамблея Олимпийского совета Азии. В работе престижного форума приняли участие представители Олимпийского совета Азии и входящих в его состав Национальных Олимпийских комитетов, главы Международного Олимпийского комитета и ведущих спортивных организаций, а также руководство Министерства спорта Республики Узбекистан, Национальных Олимпийского и Паралимпийского комитетов. #OOK#BoshAssambleya#Toshkent2029 👉@OlympicUz olympic.uz I YouTube I Instagram I