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

Резултати

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

Пребарај: #miui

当前筛选 #miui清除筛选
YuKongA | Channel

@YuKongA13579 · Post #1657 · 13.11.2025 г., 16:01

目前我参与的或认识的人使用 miuix 库的部分项目: 1、Updater-KMP:https://github.com/YuKongA/Updater-KMP 2、Font-Weight-Test_Compose:https://github.com/YuKongA/Font-Weight-Test_Compose 3、HQ-ICON_Compose:https://github.com/YuKongA/HQ-ICON_Compose 4、RestoreSplashScreen:https://github.com/YuKongA/RestoreSplashScreen 5、StatusBarLyric:https://github.com/YuKongA/StatusBarLyric 6、KernelSU:https://github.com/tiann/KernelSU 7、InstallerX-Revived:https://github.com/wxxsfxyzm/InstallerX-Revived 8、Payload-Dumper-Compose:https://github.com/rcmiku/Payload-Dumper-Compose 9、XiaomiHelper:https://github.com/HowieHChen/XiaomiHelper 10、HyperStar:https://github.com/YunZiA/HyperStar 11、HyperPods:https://github.com/Art-Chen/HyperPods 12、WOMMO:https://github.com/YifePlayte/WOMMO 13、NoRelaunch:https://github.com/YifePlayte/NoRelaunch ...待补充 二次封装库项目: 1、hyperx-compose:https://github.com/HowieHChen/hyperx-compose 曾经使用过,但现在已经面目全非的项目: 1、OShin:https://github.com/suqi8/OShin #miui

Hashtags

Lsposed Modules Updates Tracker

@lsposed_Modules_Updates_Trackers · Post #6656 · 23.04.2026 г., 16:00

#MIUI#ChsBuffer 模块:io.github.chsbuffer.miuihelper 简介:MIUI 生活质量提升 版本:19-1.1.17 更新时间:2024/10/17 09:11:09 更新日志: 修复 手机管家 10.x.x 应用详情页默认打开设置 修复 HyperOS 1.0 Android 14 通知更多设置打开通知频道设置 Fix Security app 10.x.x Replace App Info "Clear defaults" with "Open by default" setting Fix Notification's "More Info" redirect to the corresponding notification channel setting @lsposed_Modules_Updates_Trackers | @lsposed_Geeks_Bot

看看人间 @KKRJian

@KKRJian · Post #1174 · 29.11.2022 г., 12:13

有消息称#小米#MIUI 安全组件即小米的杀毒引擎添加有国家反诈中心的扫描接口(nationalAntiFraudSingleAppScan)。 at com.miui.guardprovider.engine.mi.antidefraud.AntiDefraudAppManager.getSign(Unknown Source:0) at com.miui.guardprovider.engine.mi.antidefraud.MiDetectAppsManager.virusInMiEngineRiskList(Unknown Source:30) at com.miui.guardprovider.engine.mi.antidefraud.AntiDefraudAppManager.getDetectUnsafeAppStatus(Unknown Source:6) at com.miui.guardprovider.manager.SecurityService$a.nationalAntiFraudSingleAppScan(Unknown Source:17) at com.miui.guardprovider.aidl.IAntiVirusServer$Stub.onTransact(Unknown Source:38) MIUI security components.apk源代码分析 viamogua.co

Hashtags

Lsposed Modules Updates Tracker

@lsposed_Modules_Updates_Trackers · Post #6876 · 28.04.2026 г., 02:06

#MIUI#Mufanc 模块:mufanc.tools.applock 简介:【MIUI 12】防止应用被侧滑杀死或一键清理 版本:20220417-2.1.1.r46.7e4d397 更新时间:2022/04/17 13:50:08 更新日志: 提升获取进程名的性能 支持按拼音首字母缩写搜索应用 显示正确的「MIUI 版本」 基于 Shizuku 的 NoRoot 工作模式(Beta) 将作用域列表移动至管理器存储 支持备份和恢复作用域 调整了应用图标样式 @lsposed_Modules_Updates_Trackers | @lsposed_Geeks_Bot

Hashtags

木制杂物间

@trashbox_404 · Post #123 · 03.05.2025 г., 04:28

小寄巧:(对于澎湃OS的出行助手) 可以自己撰写一条短信发给自己,以实现负一屏显示列车信息,如下: 您的火车票购票成功,3月18日G3051次福州南18:15开,14车06D 【通知】您购买的2025年1月1日CZ8888航班已支付成功!该航班计划于当日14:10从武汉天河国际机场T3航站楼起飞,15:50抵达厦门高崎国际机场T3航站楼 但只能是普通短信,不可以是网络短信。 #MIUI#HyperOS#澎湃OS

ПретходнаСтраница 1 од 3Следна