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

Пребарај: #ss2022

当前筛选 #ss2022清除筛选
Neon-Link通知

@neon_link · Post #12 · 03.03.2025 г., 04:46

机场名:Neon-Link 类别:专线 编号:0075 #Neon-Link #广港专线#SS#SS2022#家宽#不限时#新机场 测评订阅:商家送测 简介与特色: 开业年份:2025年2月18日 在线设备:5个IP 协议类型:SS-2022 此协议部分代理软件如QuantumultX暂不支持 套餐类型:周期性+不限时 常用地区:港,台,新,日,美🏠,德 速度限制:视套餐限制100~500Mbps 解锁情况:如图 延迟与稳定性: 广港三线, 1️⃣ 电信,上乘专线 2️⃣ 移动,顶尖专线 👑 3️⃣ 联通,中等专线 联通入口据最新实测水平有所下降 ️ 入口分布: 电:穗电183 联:穗联58 移:穗移183 ❶ 拓扑显示详细地区有误 ❷ 入口视用户宽带进行DNS智能解析 落地概览: 港DMIT/HGC,台Akari,新Oracle/Eons,日WebHoriz/Akari,美Misaka/ATT,德Misaka ⚠️ 注:当前UDP测试模块出现技术故障,实测UDP全通! 整体评价: 1️⃣ 新开业机场,带宽满足日常使用水平,电/移延迟很优秀。 2️⃣ 入口三网手搓,套餐虽最高限速500Mbps,但在北方也可跑满单线程。落地质量优秀(美国ATT家宽)。 3️⃣ 但联通入口短板。加之无华东入口,导致远离入口地的日美速率严重下降接近不可用水平❗️ 4️⃣ 目前结合折后价格,是为数不多 #甜点价位 (¥0.15元上下/G 且月付≤15元) 的专线小而美之选💡 ⚡️入口临近: 单线程100~500Mb❗️ 多线程400~500Mb ⚡️远离入口: 单线程(三网)100~500Mb❗️ 具有竞争力的套餐: 折后9元100G/月(约0.09元/G) 🎫限时优惠码: 5折优惠码:开业大吉(仅限月付) 7折优惠码:Neon-Link 官网: https://www.neon-link.com 频道: https://t.me/neon_link 群组: https://t.me/neon_link_user ——————————————————————————————————— 海豚测速 致力于为您提供 优质的机场测速和评测服务,帮助您找到最适合您的翻墙机场。 海豚测速群组 @haitunspeed 机场跑路风险难控,建议谨慎选择月付

Cool Scripts

@cool_scripts · Post #643 · 19.11.2024 г., 12:54

Sub-Store 小课堂: 筛选出 Shadowsocks 2022节点 ▎脚本过滤 return ['2022-blake3-aes-128-gcm', '2022-blake3-aes-256-gcm'].includes($server.cipher) ℹ️ 相关内容 Sub-Store 相关教程/脚本整合 #SubStore#Sub-Store #小课堂#tips#协议#协议筛选#筛选#SS#SS2022#Shadowsocks#Shadowsocks2022#过滤#节点