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

Резултати

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

Пребарај: #pioneers

当前筛选 #pioneers清除筛选
BLC Market - mini-app BulCoin

@bulcoin_blc · Post #275 · 07.03.2026 г., 09:00

BulCoin Early Community — start After yesterday's AMA, we begin to form the early BulCoin community. The first level has already been created: 🥇 Pioneers Pioneers will be the first 100 people These are the first project participants who have been given access to the closed chat and will participate in the development of BulCoin at an early stage. 22/28 participants of the previous promotion have gained access to invites and have joined the closed group. If you participated but didn't get in - write to us and we will give you a link Next, new levels are opened: 🥈 Early Supporters — the first 500 participants 🥉 Contributors — the first 2000 participants Early community members will be able to: • participate in testing the BLC Market • receive additional BLC rewards • invite friends and climb the leaderboard • be the first to learn about the development of the project Today we start the invitation program. Details — in the next post. #Pioneers FAQ | BUY

Hashtags

BLC Market - mini-app BulCoin

@bulcoin_blc · Post #278 · 07.03.2026 г., 12:00

Launching the BulCoin Referral Program We are starting a referral program for the early BulCoin community. Now every participant can invite friends to the project and receive additional bonuses. How it works: Invite your friends to the BulCoin channel Ask them to mention your username in the comments to this post Bonuses BLC are credited for invitations Rewards: • 3 invited — You join the private Pioneers chat • 10 invited — Bonus of 500,000 BLC • 25 invited — 3mln BLC + Participation in the BulCoin operational staff We will regularly publish the leaderboard — participants who have invited the most people. The best participants can receive additional rewards and a special status in the community. This is just the beginning of the formation of the BulCoin Early Community Invite your friends and help build the BulCoin community #Pioneers#Referrals FAQ | BUY

dopingpong

@dopingram · Post #3976 · 25.04.2025 г., 07:08

Новая картина арт-группы Doping Pong посвящена самым благодарным зрителям фильма - юным пионерам, устроившим разборки, кто сильнее - современные пираты или советские моряки, прямо в кинозале во время сеанса, на который они пришли уже в двадцатый раз. Фильм «Пираты XX века» стал абсолютным кассовым лидером советского кинопроката: к 1990 году ленту посмотрело 120 миллионов человек. Школьники ходили на него целыми классами. Фанатично, многократно и год за годом: с самой премьеры в 1980-м, еще учениками начальной школы, и до 1990-го, уже на пороге взрослой жизни. Можно сказать, что именно этот фильм взрастил и изменил целое поколение 80-х годов. А поколение, которое выросло на фильме, затем в 90-х изменило и страну по образу и подобию игр в темном зале кинотеатра – причисляя себя к Пиратам или Морякам. More info: Лот 31 https://vladey.net/ru/lot/13547 #dopingpong#pioneers#soviet#karate#kids#пиратыXXвека#pirates#XXcentury#ussr#retro

dopingpong

@dopingram · Post #1801 · 30.06.2022 г., 07:56

В картине «Остров живых» слову «пионеры» возвращается его первоначальное значение – первооткрыватели. Лодка с пионерами и вожатым – это символ первопроходцев, направляющихся к таинственному острову. Их ожидает песчаный берег, где не ступала нога современного человека, и долгое восхождение по каменным ступеням на залитую солнцем вершину, где, подобно Фата-Моргане, величественно возвышается древнее святилище. #dopingpong#oiloncanvas#island#inversion#pioneers#alive#fatamorgana#böcklin#legends#myths More info: Лот 18 https://vladey.net/ru/lot/9268

dopingpong

@dopingram · Post #1796 · 29.06.2022 г., 11:27

Смотри со звуком! «Остров живых», 50х70, холст, масло, Doping Pong, 2022 #dopingpong#oiloncanvas#island#inversion#pioneers#alive#fatamorgana#böcklin#legends#myths More info: Лот 18 https://vladey.net/ru/lot/9268