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

Резултати

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

Пребарај: #mlsa

当前筛选 #mlsa清除筛选
MDC Uzbekistan

@mdcuzbekistan · Post #903 · 03.11.2024 г., 13:31

💻 We just wrapped up an incredible event, “How to Become an MLSA” and it was a huge success! A big thank you to everyone who joined us. 🚀 Our MLSA, Dilafruz Joraboyeva, shared her inspiring journey and valuable insights on becoming a successful Microsoft Ambassador. We were also honored to have Mukhammadkarim Tukhtaboyev, lead of the Microsoft Developers Community Uzbekistan, share important information about our vibrant community and opportunities for growth.⚡ Check out the highlights in our amazing video recap! Together, we’re building a stronger tech community. Stay tuned for more events! 🙃 #MLSA#StudentAmbassador#Event @mdcuzbekistan

MDC Uzbekistan

@mdcuzbekistan · Post #902 · 29.10.2024 г., 05:00

💻 Join Us for "Way to Become an MLSA"! Are you interested in becoming a Microsoft Learn Student Ambassador? Curious about how to kickstart your journey in tech? Join us for an inspiring event featuring Uzbekistan’s youngest and first female Microsoft Student Ambassador. She will share her unique experiences and insights into the MLSA program.⚡ 📍Date & Time: November 2, 2:00 pm ⏰Location: C-Space, Yunusabad Branch This is your opportunity to ask questions, network with peers, and learn how you can become a part of this exciting community. Don’t miss out—mark your calendars!🙃 Register here! Spots are limited. #Microsoft#MLSA#StudentAmbassadors#Leadership#MicrosoftDevelopersUzbekistan @mdcuzbekistan

MDC Uzbekistan

@mdcuzbekistan · Post #900 · 22.10.2024 г., 10:32

Our Core Team Member, Dilafruz Joraboyeva, Achieved Microsoft Learn Student Ambassador Status! We are thrilled to share that our very own core team member, Dilafruz Joraboyeva, has achieved a remarkable milestone by becoming the first and youngest female Microsoft Learn Student Ambassador (MLSA) in Uzbekistan. Dilafruz, who has long been an active and dedicated part of our community, now stands as the only MLSA in the country. In her new role, Dilafruz will be leading the MLSA program across universities in Uzbekistan, bringing Microsoft technologies and opportunities closer to students. Her efforts will help build a vibrant community of learners and innovators, inspiring others to take on leadership roles in tech. Keep an eye on our official platforms for upcoming events related to the MLSA program, where you can discover how to join this exciting initiative and make an impact at your university. #Microsoft#MLSA#StudentAmbassadors#UzbekistanTech#MicrosoftDevelopersUzbekistan#Leadership#Innovation @mdcuzbekistan