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 слични објави

Пребарај: #maqsad

当前筛选 #maqsad清除筛选
Kompyuter Bilimlari | Windows Blog

@kompyuter_bilimlari · Post #6204 · 01.01.2024 г., 06:24

🔺Xullas, 2024-yil kirib keldi, siz o'z vadalaringgiz va maqsadlaringgizni esdan chiqarmadinggizmi? 🔺Agar esdan chiqarmagan bo'lsanggiz izohlarga oldinggizga qanday maqsadlar qo'yganggizni yozib qo'ying, ha aytgancha ularni bajarish uchun birinchi qadamni qo'ydingizmi... 🗣️#maqsad

Hashtags

Suxrob Xurramov | Blog

@suxrobblog · Post #354 · 23.12.2024 г., 18:48

2025-yilga maqsadlar > Tub burilish Maqsad kishini olgʻa intilishiga sabab boʻlishi mumkin, agar unda shijoat va maqsad sari harakat qilsa... 2024-yil boshida oʻylagan, baʼzilarini yozgan maqsadlarimga deyarli yetdim. Menimcha erisha olmagan maqsadlarim yoʻq ekanki, uni eslay olmadim... Chet tillari oʻrganish boʻyicha ham 6-7 oycha oʻqib, toʻxtatib qoʻydim, ishlar bilan boʻlib, kelgusi yilda chet tillariga koʻproq eʼtibor qaratishim ham mumkin. Hozircha aniq maqsad qoʻyib olishga shoshilmayapman. Balki, toʻliq biznesga oʻtib ketishim, dizaynni tark etishim ham mumkin. Doimo hayotimda tub burilishlar qilib kelganman va bundan afsuslanmayman) Tub burilishlar sababli topganlarim ham koʻp boʻldi. Yaʼniki yuqori masʼuliyatli loyihalarni ishonib topshirishdi. Masʼuliyatni boʻynimga oldim! Ancha qiynab ham qoʻydim oʻzimni, stressga tushdim, orada sogʻliqda muammolar boʻlib, shifoxonaga ham tushib chiqdim... Xullas, ishonib topshirilgan vazifaga qay holatda boʻlsa ham, ishlab berdim. Toʻgʻrisini aytganda, masʼuliyati ancha ogʻir ekan, sababi dizayndan tashqari katta masʼuliyatlarni ham boʻynimga olgan edim... Qisqasi, 2024-yil karyeram uchun ajoyib yil boʻldi desam ham boʻladi. 2025-yilda hayotimda yana ham katta oʻzgarishlar qilishga harakat qilaman, nasib boʻlsa) @suxrobblog — #maqsad#tub_burilish

IK Design©

@ikdesignuz · Post #519 · 15.08.2020 г., 19:39

#yuksalish#maqsad#natija ⚡Bugun shogirdim Boymurod Yunusov bilan yangi dizayn o'rgandik, o'ziga yarasha mehnati bor, lekin tushungan odam zavqlanib ishlaydi. @ik_design👈👉@isakovxusniddin

MILLIONER KUTUBXONASI

@Biglibrary_uz · Post #9361 · 03.02.2026 г., 05:18

💰 Orzu kutiladi. Maqsad esa har kuni tanlanadi. Agar bugun charchagan bo‘lsang ham, agar hozir natija ko‘rinmayotgan bo‘lsa ham — to‘xtama.🌟 🌟 Chunki maqsadga yetadiganlar eng tez yurganlar emas, eng bardoshli bo‘lganlardir. Bugun o‘zingdan voz kechma. Ertangi sen buning uchun rahmat aytadi. 🌟 #Maqsad#Intizom#Doimiylik#Osish#AyollarUchun 🌟@Milliarderlarim