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

Пребарај: #dual

当前筛选 #dual清除筛选

4️⃣4️⃣4️⃣3️⃣3️⃣3️⃣ 🇺🇿Vazirlar Mahkamasi huzuridagi Biznes va tadbirkorlik oliy maktabi Rossiyaning RANXiGS oliygohi bilan hamkorligidagi 3+1, "Ikki diplom" magistratura dasturiga hujjatlar qabul qilishni davom ettirmoqda. 📄Format: 2 yillik dastur — 3 semestr Toshkentda sirtqi shaklda va 1 semestr Moskvada. 📃 Nomzodlar https://e-tinglovchi.gsbe.uz/ qabul platformasi orqali hujjatlarni yuborishlari mumkin 🗓 Hujjatlarni topshirish muddati: 2024-yil 8-noyabrgacha. 📞 Maʼlumot uchun telefon: +99871 239-03-02 ________________________________________________ 🇺🇿 Высшая школа бизнеса и предпринимательства при Кабинете Министров Узбекистана совместно с РАНХиГС продолжают прием на уникальную магистерскую программу 3+1 «Два диплома». 🗂Формат:2 года обучения — 3 семестра заочнов Ташкенте и 1 семестр в Москве. 📃 Кандидаты могут подать заявку через платформу приема https://e-tinglovchi.gsbe.uz/ 🗓️Подача документов: до 8 ноября 2024 года. 📞 Телефон для справок: +998 71 239-03-02 #GraduateSchool#Study#Ranepa#Dual 🔝Web-site |🔝Facebook |🔝Instagram | 🔝Youtube

4️⃣4️⃣4️⃣3️⃣3️⃣3️⃣ 🇺🇿Vazirlar Mahkamasi huzuridagi Biznes va tadbirkorlik oliy maktabi Rossiyaning RANXiGS oliygohi bilan hamkorligidagi 3+1, "Ikki diplom" magistratura dasturiga hujjatlar qabul qilishni davom ettirmoqda. 📄Format: 2 yillik dastur — 3 semestr Toshkentda sirtqi shaklda va 1 semestr Moskvada. 🎓Diplomlar: 🔣Menejment (RANXiGS) 🔣 MBA - Korporativ boshqaruv va biznesni strategik rivojlantirish (Oliy maktab). 📃 Nomzodlar https://e-tinglovchi.gsbe.uz/ qabul platformasi orqali hujjatlarni yuborishlari mumkin 💼 Kontrakt narxi: yiliga 2000$. 🗓 Hujjatlarni topshirish muddati: 2024-yil 8-noyabrgacha. 📞 Maʼlumot uchun telefon: +99871 239-03-02 Ikki xalqaro diplomga ega bo‘ling va kareringizni davom ettiring! _________________________________________________ 🇺🇿 Высшая школа бизнеса и предпринимательства при Кабинете Министров Узбекистана совместно с РАНХиГС продолжают прием на уникальную магистерскую программу 3+1 «Два диплома». 🗂Формат:2 года обучения — 3 семестра заочнов Ташкенте и 1 семестр в Москве. 🎓Дипломы: 🔣Магистр менеджмента (РАНХиГС) 🔣 MBA — Корпоративное управление и стратегическое развитие бизнеса (Высшая школа). 📃 Кандидаты могут подать заявку через платформу приема https://e-tinglovchi.gsbe.uz/ 💼Стоимость: 2000$ в год. 🗓️Подача документов: до 8 ноября 2024 года. 📞 Телефон для справок: +998 71 239-03-02 🔐 Начни свою карьеру с двумя дипломами мирового уровня! #GraduateSchool#Study#Ranepa#Dual 🔝Web-site |🔝Facebook |🔝Instagram | 🔝Youtube

4️⃣4️⃣4️⃣4️⃣3️⃣3️⃣3️⃣ 🆕Высшая школа бизнеса и предпринимательства при Кабинете Министров продолжает приём документов на совместную магистерскую программу 3+1 «Два диплома» с РАНХиГС. 👨‍💻Два диплома по специальностьям: 1. «Магистр менеджмента» — диплом РАНХиГС. 2. «Управление бизнесом (MBA) — Корпоративное управление и стратегическое развитие бизнеса» — диплом Высшей школы 2-летняя магистратура - Заочная форма обучения - Стоимость контракта 2000$ в год - Два диплом 📕 Слушатели обучаются два года: три семестра в Высшей школе в заочнойформе и четвертый семестр в РАНХиГС, расположенном в центре Москвы, с предоставлением жилья. 🔔 Выпускники получат сразу два диплома магистра этихдвух учебных заведенийодновременно после успешного завершения программы обучения. 👨‍🦱 Кандидаты могут подать заявку через платформу приема https://e-tinglovchi.gsbe.uz/, приложив следующие документы: - документы о высшем образовании (с приложением) и нотариально заверенный перевод; - копия ID карты или паспорта (оригинал предоставляется во время экзамена); - сертификат, подтверждающий соответствующий уровень владения русским языком (если имеется). ⏳Срок приема документов: до 18: 00 8 ноября 2024 года. 📈 График работы приемной комиссии: понедельник-пятница, с 9:00 до 18:00. ☎️ Телефон для справок: +998 71 239-03-02 #GraduateSchool#Study#Ranepa#Dual 🔝Web-site |🔝Facebook |🔝Instagram | 🔝Youtube

4️⃣4️⃣4️⃣3️⃣3️⃣3️⃣ 🏙 Vazirlar Mahkamasi huzuridagi Biznes va tadbirkorlik oliy maktabi Rossiyaning RANXiGS oliygohi bilan hamkorligidagi 3+1, "Ikki diplom" magistratura dasturiga qabul davom etadi. 📄Ikki diplom mutaxassisliklari: 1.Menejment 2.MBA - Korporativ boshqaruv va biznesni strategik rivojlantirish 2 yillik Magistratura dasturi - Sirtqi ta'lim - Kantrakt to'lovi 1 yil uchun 2000$ - Ikki diplom 📚 Tinglovchilar sirtqi taʼlim shaklida umumiy ikki yil: Oliy maktabda uch semestr hamda to‘rtinchi semestrni Moskva shahri markazida joylashgan RANXiGS oliygohida, turar joy bilan taʼminlangan holda davom ettiradilar. 🔝 Bitiruvchilar o‘quv dasturini muvaffaqiyatli tamomlagandan so‘ng, bir vaqtning o‘zida ushbu ikki oliygoh magistrlik diplomlariga ega bo‘ladilar. 👩‍💻 Nomzodlar https://e-tinglovchi.gsbe.uz/ qabul platformasi orqali quyidagi hujjatlarini ilova qilgan holda murojaat qilishlari mumkin: - oliy maʼlumot to‘g‘risidagi hujjatlar (ilovasi bilan) hamda notarial tasdiqlangan tarjimasi; - ID karta yoki pasport nusxasi (imtihon vaqtida asl nusxasi taqdim etiladi); - rus tilini bilish darajasini tasdiqlovchi sertifikat (agar mavjud bo‘lsa). ⏱Qabul yakuni: 2024-yilning 8-noyabr soat 18:00 ga qadar. 👆Qabul komissiyasining ishlash jadvali: dushanba – juma kunlari, soat 9:00 dan 18:00 gacha. ℹ️ Maʼlumot uchun telefon: +99871 239-03-02 #GraduateSchool#Study#Ranepa#Dual 🔝Web-site |🔝Facebook |🔝Instagram | 🔝Youtube