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

Пребарај: #domainname

当前筛选 #domainname清除筛选
AppPie

@AppPie · Post #2450 · 17.06.2025 г., 04:03

#Apps tldx: 为你的项目寻找完美域名的命令行神器 🔗GitHub tldx 是一款开源的命令行工具,旨在帮助开发者快速进行域名头脑风暴并查询其可用性。它使用 Go 语言编写,通过并发查询,能以极快的速度从你的关键词中排列组合并验证大量域名。 对于需要为新项目、产品或初创公司寻找一个独特且尚未被注册的域名的用户来说,tldx 是一个高效、便捷的解决方案。你只需提供几个核心词汇,它就能为你探索各种可能性。 功能亮点 - 智能生成:基于关键词、前缀和后缀,智能组合出各种域名排列。 - 极速查询:利用并发机制和 RDAP 协议,快速批量检查域名是否可注册。 - 灵活配置:支持多种顶级域名(TLD)预设,并可按域名长度进行筛选。 - 多种输出:支持 JSON、列表和表格等多种输出格式,方便集成到其他工作流。 - 跨平台:为 macOS、Linux 和 Windows 提供预编译的二进制文件。 开源许可证 本项目采用 Apache-2.0 license 许可证授权。详细信息请参阅仓库中的 LICENSE 文件。 #GitHub#OpenSource#DevTools#DomainName#CLI#GoLang 📮 频道 @AppPie

GitHub Trends

@githubtrending · Post #15224 · 15.10.2025 г., 12:30

#html#digitalplat#domain#domain_platform#domainname#domains#free#freedomain You can get a free domain name from DigitalPlat FreeDomain with no cost or hidden fees. You just register a unique domain under extensions like .US.KG or .DPDNS.ORG and use any DNS provider you like, such as Cloudflare, to host your website. This helps you create your own online space without paying for a domain, making it easier and cheaper to start a website or project. Over 350,000 people already use it, and it’s supported by a nonprofit, so it’s trustworthy and open to everyone regardless of budget. https://github.com/DigitalPlatDev/FreeDomain