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

Резултати

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

Пребарај: #web3adoption

当前筛选 #web3adoption清除筛选
TON Crypto News

@toncoin_rap · Post #179 · 27.09.2024 г., 13:50

🎧⤴ ✈️Telegram’s Billion Users Set to Enter Web3 with Bitget’s OmniConnect – Game-Changer for Blockchain Integration Bitget Wallet has launched OmniConnect, an SDK that allows Telegram’s Mini-Apps to interact with 500+ blockchains, including Solana, TON, and EVM-compatible networks. ► Full News (Expand) Chorus: Bitget’s the key, unlocking the gate, Telegram flows, Web3’s our fate. From Solana to EVM, we transcend, Blockchain’s the wave, no need to pretend. Verse 1: OmniConnect dropped, it’s a brand new day, Telegram’s Mini-Apps leading the way. A billion strong, ready to dive, In this Web3 world, we’re coming alive. No more limits, chains unite, Solana, TON, now feeling the hype. Transactions smooth, signatures signed, Blockchain’s the future, leave doubt behind. Chorus: Bitget’s the key, unlocking the gate, Telegram flows, Web3’s our fate. From Solana to EVM, we transcend, Blockchain’s the wave, no need to pretend. Verse 2: Dev tools stacked, the future’s bright, Mini-Apps thrive, in multichain flight. From gasless trades, to bots that scale, Bitget’s moves, you know they won’t fail. August came, with millions onboard, Global downloads, breaking the cord. Secure logins, Google and Mail, This is the story, we’re here to prevail. Chorus: Bitget’s the key, unlocking the gate, Telegram flows, Web3’s our fate. From Solana to EVM, we transcend, Blockchain’s the wave, no need to pretend. Verse 3: Trading in wallets, social connect, No gas fees now, what you expect? The ecosystem’s growing, feel the rise, Web3’s here, open your eyes. Devs are building, ready to soar, Bitget’s tools open the door. From DeFi to games, there’s no divide, With OmniConnect, it’s a global ride. Chorus: Bitget’s the key, unlocking the gate, Telegram flows, Web3’s our fate. From Solana to EVM, we transcend, Blockchain’s the wave, no need to pretend. Bridge: We’re bridging the chains, we’re crossing the lines, Telegram’s power in these modern times. A billion users, ready to fly, Web3’s calling, the limit’s the sky. #Web3Adoption#OmniConnect#BitgetWallet #TONCryptoNewsRapStyle 🎧@toncoin_rap

Gumart Announcement 🛒

@gumartec · Post #244 · 15.04.2025 г., 07:23

🎬 Gumart is in Paris Blockchain Week 2025 🇫🇷 #GuGoGlobal campaign – a journey to take Gumart around the world and bring Web3 adoption closer to real life! 📍 First Stop: Paris Blockchain Week 2025 Our team just landed in Paris, the heart of innovation and fashion, to showcase Gumart at one of the most prestigious Web3 events in the world! From networking with top-tier founders and VCs to sharing the stage with the best builders in the space, Gumart is here to make waves. 🎥👉 Watch the highlight video from our Paris mission – and feel the energy! 💡We’re on a mission to show the world how Gumart is building the future of crypto payments, e-commerce, and DeFi — one region at a time. Real people. Real places. Real utility. 🚀 Next stop? Maybe your city. Don’t blink 👀 Let’s take Web3 mainstream – together 🌐 #GuGoGlobal#Gumart#PBW2025#Web3Adoption#ParisBlockchainWeek#CryptoInRealLife