Можно ли в 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
#OAV biz haqimizda
"Xalq so'zi" gazetasining 5-sonida:
KO'ZGU
"Ilm-fan — jamiyat taraqqiyotining ko'zgusi" - Nizomiddin MAHMUDOV, O'zR FA O'zbek tili, adabiyoti va folklori instituti direktori, f.f.d., professor.
😎Telegram |🌐Websayt
😎Facebook |😎YouTube|😎Instagram
#OAV
Navoiyda ekologik tashabbuslar izchil davom etmoqda. Xususan, “Tabiatga ehson” loyihasi doirasida tashkil etilgan navbatdagi aksiya keng jamoatchilik e’tiborini tortdi.
Navoiy shahar markaziy dehqon bozori hududida o‘tkazilgan mazkur tadbir Navoiy viloyat telekanalining Diyor 24 axborot dasturi orqali efirga uzatildi.
Ekopartiya Navoiy viloyati Kengashi matbuot xizmati
👇👇Kanalimizga obuna bo‘ling
https://t.me/navoiyekopartiya
#OAV
O‘zbekiston Ekologik partiyasi Navoiy viloyat Kengashi tomonidan “Kelajak” markazida xotin-qizlar ishtirokida o‘tkazilgan “Ayollar — ekologik madaniyat targ‘ibotchisi” mavzusidagi davra suhbati Navoiy viloyat telekanalining “Diyor 24” axborot dasturida efirga uzatildi.
Unda atrof-muhitni muhofaza qilish, ekologik madaniyatni yuksaltirishda xotin-qizlarning o‘rni, shuningdek ekologik tarbiyani avvalo oiladan boshlash masalalari haqida so‘z yuritildi. 🌿
Ekopartiya Navoiy viloyati Kengashi matbuot xizmati
👇👇Kanalimizga obuna bo‘ling
https://t.me/navoiyekopartiya
#OAV
Karmana tumanidagi Navoiy raqamli texnologiyalar texnikumida yoshlar bilan ochiq muloqot tashkil etildi.
Unda Oʻzbekiston Ekologik partiyasi Navoiy viloyat Kengashi raisi o‘rinbosari, Xalq deputatlari Karmana tuman Kengashi deputati A. Jo‘rayev ishtirok etib, Yangi Oʻzbekistonda yoshlar masalasi davlat siyosatining ustuvor yo‘nalishlaridan biri ekani alohida ta’kidlandi.
Uchrashuv davomida yoshlarga yaratilayotgan imkoniyatlar, zamonaviy kasb-hunar egallash, bandlikni ta’minlash hamda “Oʻzbekiston – 2030” strategiyasi doirasida ekologik madaniyatni yuksaltirish va atrof-muhitga mas’uliyatli munosabatni shakllantirish borasida amalga oshirilayotgan ishlar haqida batafsil ma’lumot berildi.
Mazkur ochiq muloqot jarayoni Navoiy telekanalining “Diyor 24” axborot dasturi orqali keng jamoatchilikka efirga uzatildi.
Ekopartiya Navoiy viloyati Kengashi matbuot xizmati
👇Kanalimizga obuna bo‘ling!
https://t.me/navoiyekopartiya
#OAV
Har bir me'yoriy-huquqiy normativ hujjatlar jamoatchilik muhokamasidan o'tkaziladi
Boriy Alixonov,
Oliy Majlis Qonunchilik palatasi deputati
Ekopartiya Toshkent shahar Kengashi matbuot xizmati
𝐓𝐞𝐥𝐞𝐠𝐫𝐚𝐦 | 𝐈𝐧𝐬𝐭𝐚𝐠𝐫𝐚𝐦|𝐅𝐚𝐜𝐞𝐛𝐨𝐨𝐤
#OAV
“Oʻzbekiston–2030” strategiyasini takomillashtirish masalalari muhokama qilindi
Navoiy shahridagi viloyat Ma’naviyat va ma’rifat markazida “Oʻzbekiston – 2030” strategiyasini takomillashtirishning mazmun-mohiyati va uning amaliy ahamiyati” mavzusida keng qamrovli targʻibot tadbiri boʻlib oʻtdi.
Targʻibot tadbiri davomida “Oʻzbekiston – 2030” strategiyasini takomillashtirishning mazmun-mohiyati haqida Xalq deputatlari viloyat Kengashi doimiy komissiya raisi, Oʻzbekiston Ekologik partiyasi Navoiy viloyat Kengashi raisi, “Yuksalish” umummilliy harakati viloyat boʻlinmasi boshligʻi A. Jalilov atroflicha ma’ruza qildi.
Mazkur targʻibot tadbiri Navoiy viloyat telekanalining “Diyor 24” axborot dasturi orqali efirga uzatilib, keng jamoatchilik e’tiboriga havola etildi.
Navoiy viloyati Kengashi matbuot xizmati
👇👇Kanalimizga obuna bo‘ling
https://t.me/navoiyekopartiya
#OAV
Navoiy viloyat telekanalining “Assalom, Yangi kun” tonggi axborot-tahliliy dasturida O‘zbekiston Ekologik partiyasidan Karmana tuman Kengashiga saylangan deputat Zokir Tog‘ayev ishtirokida suhbat bo‘lib o‘tdi.
Navoiy viloyati Kengashi matbuot xizmati
👇👇Kanalimizga obuna bo‘ling
https://t.me/navoiyekopartiya
#OAV
Konstitutsiya – inson qadri, erkinlik, tenglik va adolat garovi!
Sharq universitetida O‘zbekiston Respublikasi Konstitutsiyasining 33 yilligiga munosabati bilan O‘zbekiston Ekologik partiyasi Navoiy viloyat Kengashi tashabbusi bilan, Sharq universiteti, Navoiy shahar Adliya bo‘limi, O‘zbekiston Ekologik harakati Navoiy viloyati hududiy boshqarmasi hamda Navoiy davlat universiteti Tarix fakulteti hamkorligida davra suhbati o'tkazildi.
Uchrashuvda talabalarga Asosiy qonunimizning mazmun-mohiyati, inson huquq va erkinliklarini ta’minlashdagi o‘rni, shuningdek, konstitutsiyaviy islohotlarning jamiyat taraqqiyotiga ta’siri haqida atroflicha ma’lumotlar berildi.
📺 Mazkur tadbir Navoiy telekanalining “Diyor 24” axborot dasturi orqali efirga uzatildi.
Navoiy viloyati Kengashi matbuot xizmati
👇👇Kanalimizga obuna bo‘ling
https://t.me/navoiyekopartiya
#OAV
Konstitutsiya - jamiyat va davlatning huquqiy poydevori
Konstitutsiya – jamiyat va davlat taraqqiyotining mustahkam huquqiy poydevori sanaladi. Unda nafaqat fuqarolarning huquq va erkinliklari, balki jamiyatning barqaror rivojlanishi uchun zarur bo‘lgan ekologik me'yorlar, atrof-muhitni muhofaza qilishga doir tamoyillar ham aniq belgilab qo‘yilgan.
Shu ma’noda, O‘zbekiston Ekologik partiyasi Navoiy viloyati Kengashi tomonidan hududlarda amalga oshirilayotgan tizimli ishlar alohida e’tiborga loyiq. Partiya faollari nafaqat ekologik qonunchilikning mazmun-mohiyatini ommaga yetkazish, balki amaliy loyihalar, targ‘ibot tadbirlari va fuqarolar ishtirokidagi ekologik tashabbuslarni qo‘llab-quvvatlashga ham katta ahamiyat qaratmoqda.
Mahalla telekanalining “Joyida” informatsion dasturi orqali efirga uzatilgan axborotda aynan shu masalalar yoritildi.
Navoiy viloyati Kengashi matbuot xizmati
👇👇Kanalimizga obuna bo‘ling
https://t.me/navoiyekopartiya
#OAV
O‘zbekiston Ekologik partiyasi Navoiy viloyat Kengashi hamda Navoiy davlat konchilik va texnologiyalari universiteti hamkorligida Navoiy viloyati Ma’naviyat va ma’rifat markazida yoshlar ekologik tafakkurini rivojlantirishga qaratilgan “Yoshlar tashabbuslari: Yashil taraqqiyot uchun zamonaviy yechimlar” mavzusidagi tadbir jarayonlari Navoiy viloyat telekanalining“Diyor 24” axborot dasturi orqali efirga uzatildi.
Navoiy viloyati Kengashi matbuot xizmati
👇👇Kanalimizga obuna bo‘ling
https://t.me/navoiyekopartiya
#OAV
Navoiy viloyati Yoshlar markazida bo‘lib o‘tgan Fuqarolik jamiyati haftaligi forumi Navoiy viloyat telekanalining “Diyor 24” axborot dasturida orqali efirga uzatildi.
Tadbir doirasida Yuksalish harakati — Navoiy viloyati hududiy bo‘linmasi rahbari Alijon Jalilov o‘z fikrlarida yoshlarning ijtimoiy tashabbuslariga berilayotgan e’tibor oshayotganini, mahalliy darajada amalga oshirilayotgan loyihalar fuqarolar hayotiga bevosita ijobiy ta’sir ko‘rsatayotganini ta’kidladi.
Navoiy viloyati Kengashi matbuot xizmati
👇👇Kanalimizga obuna bo‘ling
https://t.me/navoiyekopartiya
#OAV
Navoiy viloyat telekanalining “Ekologik muvozanat” ko‘rsatuvida Karmana tumanida “Yashil makon” umummilliy loyihasi doirasida olib borilayotgan keng ko‘lamli ishlar hamda ularni amalga oshirishdagi faollik xususida kòrsatuv efirga uzatildi.
Kòrsatuvda O‘zbekiston Ekologik partiyasi Navoiy viloyat Kengashi bosh mutaxassisi Sardor Islomov loyiha doirasida partiya tomonidan viloyat va tuman darajasida olib borilayotgan amaliy ishlar haqida so‘z yuritgan.
Navoiy viloyati Kengashi matbuot xizmati
👇👇Kanalimizga obuna bo‘ling
https://t.me/navoiyekopartiya