Можно ли в 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
#Yashilmakon
Prezident Shavkat Mirziyoyev “Yashil makon” umummilliy loyihasi doirasida koʻchat ekish tadbirida ishtirok etib, Milliy dendrologiya bogʻini barpo etishga start berdi.
Bizni kuzating
Facebook | Instagram |YouTube|Telegram
#Yashilmakon🌱
13–14 mart kunlari mamlakatimizda umumxalq hashari e’lon qilinganligi munosabati bilan Andijon viloyati bo‘ylab “Yashil makon” umummilliy loyihasi doirasida keng ko‘lamli hashar tadbirlari o‘tkazilmoqda.
Ushbu ekologik tashabbus doirasida hududlarda obodonlashtirish ishlari amalga oshirilmoqda, ko‘chatlar ekilib, atrof-muhitni yanada toza va yashil maskanga aylantirishga alohida e’tibor qaratilmoqda. 🌳
Barchangizni ushbu ezgu va savobli ishda faol ishtirok etishga chorlab qolamiz. Birgalikda yurtimizni yanada obod va yashil maskanga aylantiraylik! 🍃
#YashilMakon
🌿 O‘zbekiston Milliy universitetida “Yashil makon” umummilliy loyihasi doirasida “Yashil kelajak” marafoni o‘tkazildi
Batafsil👉https://nuu.uz/ozmuda-yashil-makon-umummilliy-loyihasi
👉На русском
👉In English
☑O'zbekiston Milliy Universiteti
🌱Yurtimizni “Yashil makon”ga aylantiramiz!
🌱Yoshlar ishlari agentligi tashabbusi bilan 27-mart kuni soat 11:00da Toshkent shahridagi Yangi hayot tumani, Marxamat mahallasida “Yashil makon” umummilliy loyihasi doirasida daraxt ko’chatlarini ekish rejalashtirilgan.
“Yashil makon” loyihasi bo’lib o’tadigan ▶️manzil
🤝Aziz yoshlar, Siz ham borliqni asrash, ekologik muammolarni bartaraf etishda faol ishtirok eting!
#yashilmakon
🕊@dkattakhanova📱Facebook
📱Instagram🌐LinkedIn🕊X
🌱 Bugun Toshkent viloyati Bo'stonliq tumanida tashkil etilgan “Yashil makon” loyihasi jarayonidan olgan rasmlarimni e'tiboringizga havola etaman.
#yashilmakon#photobyisakov
@isakovxusniddin
#YashilMakon#ЯшилМакон
🌳Joriy yilning bahorgi mavsumida 130 mln tupdan ortiq daraxt va buta ko‘chatlari o‘tqazildi
Yurtimizda "Yashil Makon" umummilliy loyihasi doirasida ko‘kalamzorlashtirish chora-tadbirlari davom ettirilmoqda. Xususan, 2025-yilning bahorgi mavsumida respublikada 136 mln tup daraxt va buta ko‘chatlari o‘tqazildi.
https://gov.uz/oz/eco/news/view/52101
•┄┄┄┄┄┄┄༻❅༺┄┄┄┄┄┄┄•
🌳Более 130 миллионов саженцев деревьев и кустарников высажено веснойэтого года
В рамках общенационального проекта «Яшил Макон» («Зелёное пространство») в нашей стране продолжаются мероприятия по озеленению. В частности, весной 2025 года по всей республике было высажено 136 миллионов саженцев деревьев и кустарников.
https://gov.uz/ru/eco/news/view/52101
Telegramfacebook
Youtubeinstagram
#YashilMakon#ЯшилМакон
🌳"Yashil makon" platformasi daraxtlarga oid ma'lumotlar shaffofligini ta'minlaydi
Ekologiya, atrof-muhitni muhofaza qilish va iqlim o‘zgarishi vazirligi tomonidan "Yashil makon" platformasi yo‘lga qo‘yilgan.
https://gov.uz/oz/eco/news/view/51099
🌳Платформа «Яшил макон» обеспечивает прозрачность информации о деревьях
Министерством экологии, охраны окружающей среды и изменения климата запущена платформа «Яшил макон».
https://gov.uz/ru/eco/news/view/51099
InstagramTelegram
FacebookYoutube
#YashilMakon#ЯшилМакон
🌳Joriy yilning bahorgi mavsumida 130 mln tupdan ortiq daraxt va buta ko‘chatlari o‘tqazildi
Yurtimizda "Yashil Makon" umummilliy loyihasi doirasida ko‘kalamzorlashtirish chora-tadbirlari davom ettirilmoqda. Xususan, 2025-yilning bahorgi mavsumida respublikada 136 mln tup daraxt va buta ko‘chatlari o‘tqazildi.
https://gov.uz/oz/eco/news/view/52101
🌳Более 130 миллионов саженцев деревьев и кустарников высажено веснойэтого года
В рамках общенационального проекта «Яшил Макон» («Зелёное пространство») в нашей стране продолжаются мероприятия по озеленению. В частности, весной 2025 года по всей республике было высажено 136 миллионов саженцев деревьев и кустарников.
https://gov.uz/ru/eco/news/view/52101
🌳Over 130 Million Tree and Shrub Seedlings Planted This Spring
As part of the nationwide project “Yashil Makon” (“Green Space”), greening efforts continue across Uzbekistan. In particular, 136 million tree and shrub seedlings were planted across the republic in the spring of 2025.
https://gov.uz/en/eco/news/view/52101
📷Instagram | 🕊Telegram | 📱Facebook| X| 📗WhatsApp
#YashilMakon#ЯшилМакон
🌳"Yashil makon" platformasi daraxtlarga oid ma'lumotlar shaffofligini ta'minlaydi
Ekologiya, atrof-muhitni muhofaza qilish va iqlim o‘zgarishi vazirligi tomonidan "Yashil makon" platformasi yo‘lga qo‘yilgan.
Batafsil
💻Instagram😀You Tube 📝Telegram💬Facebook🌍Sayt
Deyarli hamma qo'ygan rasmlarim rasmiy ekan, shuning uchun lentamga norasmiy post ham qo'yay dedim:)
Toshkent viloyati, Bo'stonliq tumanida o'tkazilgan Yashil makon loyihasidan esdalik rasmlar.
#yashilmakon#lightroom
@isakovxusniddin
#Samarqand#YashilMakon
“Yashil oliygoh” tanlovi gʻolibiga BYD Chazor elektromobili topshirildi
Samarqand davlat arxitektura-qurilish universitetida boʻlib oʻtgan yigʻilish doirasida respublika oliy taʼlim tashkilotlari oʻrtasida oʻtkazilgan “Yashil oliygoh” tanlovi gʻolibi taqdirlandi. Ekologik barqarorlikni taʼminlash, yashil texnologiyalarni joriy etish va atrof-muhitni muhofaza qilishga qaratilgan mazkur tanlovda Jizzax politexnika instituti gʻolib deb topildi.
Ekologik masʼuliyatni taʼlim jarayonining ajralmas qismi sifatida qarayotgan institut jamoasiga Prezident sovgʻasi sifatida BYD Chazor elektromobili taqdim etildi.
Taʼkidlash joizki, oliygoh hududidagi 24 gektar maydonning 21 gektarida 22 ming tupdan ortiq mevali va manzarali daraxtlar ekilib, keng koʻlamli yashil hudud barpo etilgan. Shuningdek, tomchilatib sugʻorish tizimi joriy etilib, suv resurslaridan samarali foydalanish taʼminlangan. Institutda quvvati 650 kVt boʻlgan quyosh panellari oʻrnatilgan boʻlib, oʻtgan yilning oʻzida elektr energiyasi isteʼmoli 67 foizga qisqartirildi.
Shuningdek, tadbir doirasida “Yashil makon” umummilliy loyihasi doirasida Samarqand davlat arxitektura-qurilish universiteti hududiga daraxtlar ekildi.
Bizni kuzating
Facebook | Instagram |YouTube|Telegram
#YashilMakon#Studiya24
🌳Oliy Majlis Qonunchilik palatasida "Yashil makon" umummilliy loyihasi doirasida ekilayotgan daraxtlar, ularning noqonuniy kesilishining oldini olish, daraxtlarga shikast yetkazilishiga yo‘l qo‘ymaslikka katta e'tibor qaratilmoqda.
💚Xususan, bu borada mart oyida davra suhbati tashkil etilgan, bahorgi mavsum bo‘yicha parlament eshituvi ham ko‘zda tutilgan. Daraxtlar bilan bog‘liq huquqbuzarliklarga qarshi parlament nazorati olib boriladi.
📚Qolaversa, Ekologiya vazirligi, Ekologik partiya bilan birgalikda maxsus qo’llanma ishlab chiqilgan. Bu qo’llanmada qaysi hududda qanday daraxtlar ekilishi, ularni qanday parvarishlash kerakligi, agrotexnik tadbirlar, kasalliklarga qarshi qanday kurashish kerakligi va boshqa ma’lumotlar o’rin olgan. Bu qo’llanmalar juda ixcham, cho’ntakbop, tashkilotlarga tarqatilgan va ular bemalol foydalanishlari mumkin.
✅Shuningdek, Davlatimiz rahbari tomonidan Bokuda bo’lib o’tgan iqlim o’zgarishiga doir xalqaro konferensiyada o’simliklarning genetik bankini tuzish tashabbusi ilgari surilgan va bu katta ahamiyat kasb etadi.
📺"O‘zbekiston 24" telekanalining "Studiya 24" tok-shousida shu va boshqa muhim mavzularga alohida e’tibor qaratildi.
📱telegram 📱instagram