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

Резултати

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

Пребарај: #21mart

当前筛选 #21mart清除筛选
ADU.UZ | Rasmiy kanal

@adu_uz · Post #59618 · 22.03.2026 г., 09:01

#Dayjest#21mart 🌺“Navro‘zni ulug‘lash – Insonni ulug‘lashdir!” 21-mart Navro‘z umumxalq bayrami munosabati bilan “Navro‘zni ulug‘lash – Insonni ulug‘lashdir!” bosh g‘oyasi asosida oliy ta’lim tashkilotlarida ma’naviy-ma’rifiy tadbir va tanlovlar o‘tkazilmoqda. ➖ Qoʻqon davlat universiteti; ➖ Namangan davlat universiteti; ➖ TDTU Termiz filiali; ➖ Andijon qishloq xoʻjaligi va agrotexnologiyalar instituti; ➖ Andijon davlat chet tillari instituti; ➖ Buxoro davlat universiteti; ➖ Jizzax politexnika instituti; ➖ Namangan davlat texnika universiteti; ➖ Nukus davlat pedagogika instituti; ➖ O‘zMU Jizzax filiali; ➖ Buxoro davlat texnika universiteti; ➖ Buxoro davlat pedagogika instituti; ➖ Osiyo xalqaro universiteti; ➖ Samarqand davlat pedagogika instituti; ➖ SamDU Urgut filiali; ➖ Farg‘ona davlat universiteti; ➖ TKTI Yangiyer filiali; ➖ Qarshi davlat universiteti; ➖ Samarqand davlat veterinariya meditsinasi, chorvachilik va biotexnologiyalar universiteti; ➖ Navoiy davlat universiteti; ➖ Andijon davlat universiteti; ➖ Andijon davlat pedagogika instituti; ➖ Urganch davlat universiteti; ➖ Alfraganus universiteti; ➖ Guliston davlat universiteti; ➖ Samarqand iqtisodiyot va servis instituti; ➖ Toshkent davlat yuridik universiteti; ➖ Guliston davlat pedagogika instituti; ➖ Toshkent davlat agrar universiteti; ➖ Jizzax davlat pedagogika universiteti; ➖ TDIU Samarqand filiali; ➖ O‘zDSMI Nukus filiali; ➖ Navoiy davlat konchilik va texnologiyalar universiteti; ➖ Millat umidi universiteti; ➖ Toshkent kimyo-texnologiya instituti; ➖ Botir Zokirov nomidagi Milliy estrada san’ati instituti; ➖ Samarqand davlat arxitektura-qurilish universiteti; ➖ Urganch davlat pedagogika instituti; ➖ Denov tadbirkorlik va pedagogika instituti; ➖ Shahrisabz davlat pedagogika instituti; ➖ Chirchiq davlat pedagogika universiteti; ➖ Farmatsevtika ta’lim va tadqiqot instituti; ➖ Farg’ona jamoat salomatligi tibbiyot instituti; ➖ Toshkent davlat texnika universiteti; ➖ Samarqand davlat tibbiyot universiteti ; ➖ O‘zbekiston davlat jahon tillari universiteti; ➖ Toshkent iqtisodiyot va pedagogika universiteti; ➖ Urganch davlat tibbiyot instituti; ➖ “Ipak yo‘li” turizm va madaniy meros xalqaro universiteti. Bizni kuzating Facebook | Instagram |YouTube | Telegram

🇺🇿Qadrli yurtdoshlar, yasharish va yangilanish bayrami - Navro‘zi olam muborak bo‘lsin! 🌱 Barchangizni diyorimizga o‘zgacha shukuh va tarovat ila kirib kelgan fasllar malikasi bahorning yangilanish va yasharish bayrami – Navro‘zi olam bilan muborakbod etamiz! 🌸Navro‘z barchamizga fayzu baraka, tinchlik va farovonlik keltirsin! Hurmat bilan, Biznes va tadbirkorlik oliy maktabi #GSBE#GraduateSchool#Navruz#21Mart#Holiday 🔝Web-site |🔝Facebook | 🔝Instagram | 🔝Youtube

CNC Electric Uzbekistan

@electromaxgroup · Post #981 · 21.03.2021 г., 04:03

Qadrli do'stlar, sizlarni chin qalbimizdan Navro'z bayrami bilan tabriklaymiz! Ushbu bahoriy kunda tuganmas baxt, xotirjamlik, ezgulik va farovonlik tilaymiz. Har bir oilada quvonch va farovonlik hukmron bo'lsin. CNC Uzbekistan kompaniyasi nomidan har biringizga ko'rsatilgan ishonch, e'tibor va samarali hamkorlik uchun minnatdorlik bildiramiz. Дорогие друзья, от всей души поздравляем Вас с праздником Навруз! В этот весенний день мы хотим пожелать Вам безграничного счастья, мира, добра и процветания. Пусть в каждой семье царит радость и благополучие. Компания CNC Uzbekistan благодарит каждого за оказанное доверие, проявленное внимание и плодотворное сотрудничество. Telegram|Instagram|Facebook|Youtube|Website|Email #21mart#navruz#cnc#cncelectric#cncuzbekistan#cnctashkent#elcomelectric#elcom