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

Резултати

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

Пребарај: #eslatmalar

当前筛选 #eslatmalar清除筛选
Behzod Otajonov visual artist

@behzod_otajonov · Post #1724 · 23.01.2025 г., 07:36

BAMBUK NAZARIYASI🎋 Bambukni ekib, muntazam sug'orib va parvarish qilsangiz, birinchi yil hech qanday o'zgarish sezilmaydi. 2-, 3-, va 4-yilda ham biror o'sish alomatlari ko'rinmaydi. Ammo aslida, bu vaqt davomida bambuk yer ostida kuchli ildiz tizimini rivojlantiradi. So'ngra, 5-yil kelib, bambuk bir necha hafta ichida 25-30 metr balandlikka o'sishi mumkin! Bu nimani anglatadi? ⭐️ Sabr-toqat: Hayotda muvaffaqiyatga erishish uchun vaqt va tinimsiz mehnat talab etiladi. Dastlab natijalar ko'rinmasa ham, ishonchni yo'qotmang. 🔥 Mustahkam asos: Bambukning ildizlari kabi, natijaga erishish uchun ham puxta tayyorgarlik va kuchli poydevor kerak. 💥 Portlash vaqti: To'g'ri vaqt kelganda, barcha mehnatlar natijasi yorqin namoyon bo'ladi. Xulosa: Hayotda bambuk singari sabr qiling, mustahkam asos quring va oxirida katta natijalarga erishing! @Azamatjon_design | #eslatmalar

Hashtags

Azamatjon · Blog!

@azamatjon_designer · Post #56 · 13.02.2025 г., 11:31

Bu qoida hayotda ko‘p muammolarni oldini olishga yordam beradi. Jahl ustida javob, xursandlikda va’da , kayfiyat yomonligida esa qaror bermaslikka harakat qilaman. Chunki bu oddiy qoidaga amal qilmagan har bir lavhadan qattiq pushaymon bo'lganman! Xulosa: Hissiyotlar ta’sirida shoshilinch qaror bermaslik kerak! @Azamatjon_design | #eslatmalar

Hashtags

Azamatjon · Blog!

@azamatjon_designer · Post #50 · 23.01.2025 г., 04:15

BAMBUK NAZARIYASI🎋 Bambukni ekib, muntazam sug'orib va parvarish qilsangiz, birinchi yil hech qanday o'zgarish sezilmaydi. 2-, 3-, va 4-yilda ham biror o'sish alomatlari ko'rinmaydi. Ammo aslida, bu vaqt davomida bambuk yer ostida kuchli ildiz tizimini rivojlantiradi. So'ngra, 5-yil kelib, bambuk bir necha hafta ichida 25-30 metr balandlikka o'sishi mumkin! Bu nimani anglatadi? ⭐️ Sabr-toqat: Hayotda muvaffaqiyatga erishish uchun vaqt va tinimsiz mehnat talab etiladi. Dastlab natijalar ko'rinmasa ham, ishonchni yo'qotmang. 🔥 Mustahkam asos: Bambukning ildizlari kabi, natijaga erishish uchun ham puxta tayyorgarlik va kuchli poydevor kerak. 💥 Portlash vaqti: To'g'ri vaqt kelganda, barcha mehnatlar natijasi yorqin namoyon bo'ladi. Xulosa: Hayotda bambuk singari sabr qiling, mustahkam asos quring va oxirida katta natijalarga erishing! @Azamatjon_design | #eslatmalar

Hashtags

Azamatjon · Blog!

@azamatjon_designer · Post #58 · 27.02.2025 г., 08:48

SHOGIRLIK INQIROZI! Hozirgi kuzatuvlarimdan kelib chiqib, dolzarb va juda muhim masalaga e'tibor qaratmoqchiman. Hozirda (turli sohalarda tez daromad keltiruvchi kasblar) bo‘yicha kurslarni bitirgan o‘quvchilar aksariyat hollarda to‘g‘ridan-to‘g‘ri ishga kirishga intilmoqda. Bu yaxshi yo‘l, lekin birdaniga 3-6 oy ichida mutaxassis bo‘lish haqiqatga yaqin emas. Avvallari (sartaroshlik, ustachilik va hokazo) kasblar bo‘yicha ustalarga shogird tushilar, ularning yonida yillar davomida ishlanar edi. Qachonki usta "Fotiha" bersa, shogird mustaqil ish boshlagan. Ya'ni bu jarayon mutaxassis bo‘lish darajasiga yetguncha 3-5 yil yoki undan ham ziyod davom etgan. Hech qanday haq evazsiz va kutuvlarsiz, ustozga xizmat qilib tajriba orttirilgan. Oxirgi paytlarda esa bu holat yo‘qolib borayotgandek go'yo. Kursni bitirgan ko‘plab "mutaxassislar" o‘zlarini sohaning Pro Ultra ustasi deb bilishadi. Lekin ular o‘z bilimlari va amaliy tajribasi yetarli emasligini anglamaydi. Va bundaylardan ko'plab ish beruvchilar ham aziyat chekmoqda. Xulosa: 3-6 oylik kurs bilan to‘laqonli mutaxassis bo‘lish qiyin. Qaysi zamonaviy kasbni o‘rganmang, o‘zingizga shu sohada katta tajribaga ega ustoz toping va ulardan bilim oling. Ya'ni tavsiyam kerak bo'lsa tekinga ishlang! Ustoz bo'la oladigan mutaxassislar bilan ishlang va ulardan bilimlarni, duolarni oling! Ustoz bilan ishlash, rivojlanish - sizni haqiqiy professional qiladi @Azamatjon_design#eslatmalar#problem_solution

Azamatjon · Blog!

@azamatjon_designer · Post #72 · 26.03.2025 г., 19:24

#PROBLEM Dunyoda adolatsizlik bor – ba’zilar ko‘p narsaga ega, boshqalar esa hech narsasiz... #SOLUTION Odamlar bir-biriga yordam berishi kerak – agar hamma faqat o‘zini o‘ylasa, hayot yomonlashadi. Faqat birlikda adolat bo‘lishi mumkin. Xulosa: Ba’zilarning ko‘p narsaga ega bo‘lishi faqat boylik bilan emas, balki salohiyat, imkoniyat, nasab, sog‘liq, yashash joyi kabi ustun jihatlar bilan farqlanadi. Hech narsasiz deganda esa, sog‘liq muammolari, nizolar, ochlik, qashshoqlik, ilmsizlik va boshqa imkonsiz holatlar tushuniladi. Yechim: Odamlar bir-biriga yordam berishi kerak, ya’ni bilgan bilmaganga o‘rgatishi, to‘q ochni to‘ydirishi, imkonli inson imkonisizga ko‘mak berishi lozim. Ya’ni, biz qanday vaziyatda bo‘lmaylik, bizdan pastdagilarga yordam berishimiz, o‘z ustimizda ishlashdan to‘xtamasligimiz va shukr qilishimiz kerak. @Azamatjon_design#eslatmalar#problem_solution