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

Резултати

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

Пребарај: #digitalocean

当前筛选 #digitalocean清除筛选
VPS简测

@vps_test · Post #70 · 14.05.2023 г., 06:31

DigitalOcean Frankfurt 法兰克福 下行15Gbps,上行2Gbps,用的人较少,欧洲用户选他比较多,国际互连比较强 套京德IPLC直接起飞,超级无敌的落地鸡 #digitalocean#1Gbps#建站

VPS简测

@vps_test · Post #68 · 14.05.2023 г., 06:29

DigitalOcean Singapore 新加坡 下行1.5Gbps,上行2Gbps,带宽较小 电信/联通拉稀,广移可拉 网络不是很稳定,因为APE海缆脆弱,老波及到 #digitalocean#1Gbps#建站

折腾实验室频道

@TossLabChannel · Post #510 · 10.01.2025 г., 14:33

#DigitalOcean#数字海洋#VPS#白嫖 白嫖Digitalocean数字海洋服务器10台VPS 60天 DigitalOcean 是一家总部位于美国纽约的云计算服务商,成立于2011年,提供高性价比和易用的云服务。通过注册新账户并使用 邀请链接 ,可以获得200美元的免费额度,并使用该额度购买VPS实例等服务,最长可使用60天。 注册条件 • 有效邮箱地址:可使用Google邮箱、QQ邮箱等主流邮箱进行注册。 • 支付方式:需要绑定信用卡或借记卡(部分地区支持支付宝)。 • 邀请链接:使用邀请链接注册可获得200美元免费额度。 • 美国VPN(可选):建议使用美国IP注册,以防止账户因地区限制被封。 注意事项 1. 免费额度 :使用邀请链接注册后,获得200美元免费额度,需在2个月内使用完毕。合理规划资源使用,避免浪费。 2. 绑定支付信息 :绑定支付方式时,会产生1美元的预授权金额,之后会退回,不会影响实际账户资金。 3. 机器实例配额 :每个账户最多可创建10个实例。建议不要一次性启动所有实例,以免触发账户限制。 4. 使用VPN :建议在整个注册和使用过程中保持美国VPN开启,避免因IP地区问题导致账户受限。 5. 避免超额使用 :免费额度有效期为2个月,请根据需求合理分配资源,避免额外费用。 通过合理使用DigitalOcean的免费额度,可以在不花费资金的情况下体验其VPS服务。 📢 群聊: @TossIPhone 🎈 频道: @TossIChannel ❗️ ❗️ ❗️ ❗️ ❗️ ❗️ ❗️ ❗️ 🔘折腾系列频道 - 全面介绍 🔘境外离岸银行教程合集目录 🔘折腾实验室优质Github项目合集

VPS简测

@vps_test · Post #72 · 14.05.2023 г., 06:33

DigitalOcean Bangalore 班加罗尔 最冷门的一个区域,根本没人用,算是我见到过的印度机器中国际互连最强了,到国内三网稳定,延迟大,但是几乎不丢包,优秀的落地,抗DDoS!但是CPU性能特别好,有需要持久计算能力的可以选。 #digitalocean#1Gbps#建站#DDoS防护