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

Пребарај: #ala

当前筛选 #ala清除筛选
Almaty International Airport

@alaport_tav · Post #104 · 05.03.2025 г., 05:53

Шектеусіз, стереотипсіз, кедергісіз! 💙 Авиация – бұл мүмкіндіктер әлемі, мұнда ең бастысы жыныс емес, кәсібилік, амбиция және биік белестерді бағындыруға ұмтылу. Әйелдер күн сайын бірінші дәрежелі ұшқыш, инженер, диспетчер және көшбасшы бола алатынын дәлелдеп жүр. Біз авиацияны дамытатын, жаңа ұрпақтарды шабыттандыратын және саланы өзгертетін әйел қызметкерлерімізді мақтан тұтамыз! Армандағандардың барлығына аспан әрдайым ашық болсын. 8 Наурыз мерекесі құтты болсын! ✈️ — No limits, no stereotypes, no barriers! 💙 Aviation is a world of opportunities where skills, ambition, and determination matter—not gender. Every day, women prove that they can be exceptional pilots, engineers, air traffic controllers, and leaders. We are proud of the women who drive the aviation industry forward, inspire future generations, and break barriers. The sky is open to anyone willing to take a step! Happy upcoming International Women’s Day! ✈️ — Без границ, без стереотипов, без преград! 💙 Авиация — это мир возможностей, где главное не пол, а профессионализм, амбиции и стремление к высотам. Женщины ежедневно доказывают, что они могут быть первоклассными пилотами, инженерами, авиадиспетчерами, руководителями. Мы гордимся нашими сотрудницами, которые двигают авиацию вперёд, вдохновляют новые поколения и меняют индустрию! Пусть небо всегда будет открыто для всех, кто мечтает о нём. С наступающим 8 Марта! ✈️ #GenderEquality#ALA#Aviation

Almaty International Airport

@alaport_tav · Post #105 · 06.03.2025 г., 07:07

✈️ ALA гендерлік теңдікті қолдайды 4 және 5 наурыз күндері Алматыда ИКАО-ның гендерлік теңдік және авиацияда әйелдерді қолдау мәселелері бойынша өңірлік семинары өтті. Іс-шара сарапшылар мен сала жетекшілерін жинап, тәлімгерлік, үздік тәжірибелер мен авиациядағы әйелдерді қолдау жөніндегі бастамаларды талқылады. Алматы халықаралық әуежайы осы бастаманың демеушісі болып табылатынын және авиациядағы әйелдерді қолдауды жалғастыратынын мақтан тұтады. Біз бірлесіп авиацияның инклюзивті болашағын жасаймыз! __ ✈️ ALA Supports Gender Equality in Aviation On March 4-5, Almaty hosted the ICAO EUR/ NAT Regional Workshop on Gender Equality and Empowering Women in Aviation. The event brought together industry experts and leaders to discuss mentorship, best practices, and initiatives to support women in aviation. Almaty International Airport is proud to sponsor this initiative and remains committed to empowering women in aviation. Together, we are shaping an inclusive future for aviation! __ ✈️ ALA поддерживает гендерное равенство в авиации 4 и 5 марта в Алматы прошел региональный семинар ИКАО по вопросам гендерного равенства и поддержки женщин в авиации. Мероприятие собрало экспертов и лидеров отрасли, чтобы обсудить наставничество, лучшие практики и инициативы по поддержке женщин в авиации. Международный аэропорт Алматы гордится тем, что является спонсором этой инициативы и продолжает поддерживать женщин в авиации. Вместе мы создаем инклюзивное будущее авиации! #ICAO#GenderEquality#AviationForAll#WomenInAviation#ALA