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

Резултати

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

Пребарај: #sayss

当前筛选 #sayss清除筛选
杰尼龟和他的订阅们

@jngchannel · Post #1360 · 04.12.2022 г., 12:04

#SaySS #SS 测速带宽 #上海移动1000M #深圳电信1000M 官网: https://www.epaybc.com 频道: 见群组关联频道 群组: https://t.me/SaySS_Group 套餐截图: https://t.me/taochanyuantu/117 正如其名SaySS,机场协议也是SS的,节点比较精简,主要为主流地区,机场入口就一个扬州移动,落地有HKT、Akari、NTT、Scloud、Hinet、中国移动香港国际商宽等 机场有专属Emby 八五折优惠码:SaySSYYDS 截至日期:2022.12.31 23:59 购买斗牛两年付及以上 / 购买Basic,Standard,Enterprise / 所有按量即送对应套餐期Netflix独享车位(发工单申请) (比如购买年付即可申请一年独享Netflix车位,购买两年付可以申请两年独享Netflix车位,买按量只送一年)

杰尼龟和他的订阅们

@jngchannel · Post #2696 · 08.02.2024 г., 13:39

新年优惠码 #Kuromis 优惠码:2024-Spring-Festival 有效期至:2024/02/21 23:59:59 #FlowerCloud 优惠码:2024HNY 2024年2月1日 0:00 开始到2月29日 23:59 全场 8折,不包括 Air/企业套餐 #Ytoo 农历新年特惠:New2024 2024年2月1日 00:00 至2024年2月29日 23:59 结束 全场 8.5 折,不包括Air/Team套餐 #V2Tun 农历新年特惠:NewYear2024 2024年2月29日 23:59 结束 全场8.5折 #XFSS#XFLTD 88折优惠码:新春快乐龙年大吉 年付不可用 截止 2024/02/20 #八戒 活动时间:北京时间 UTC+8 2024/2/1 00:00 到 2024/2/24 23:59 不限时套餐88 折:20242A 月付套餐8折:20242Y #Miaona 活动时间:北京时间 UTC+8 2024/2/1 00:00 到 2024/2/24 23:59 8折优惠码:20242 #OuO 七折优惠码:HAPPYNEWYEAR #阿伟云 月付套餐8.5折优惠码:春节快乐 优惠时间:2月06日0 0:00-2月17日23:59 #NiceDuck 85折优惠码:2024duck-85 限月付、季付、半年付使用 75折优惠码:2024duck-75 限年付使用 有效期:2024/2/1—2024/2/18 #TotoroCloud 活动时间:2024年1月29号20:00-2024年2月29号23:59 半年及以下周期85折优惠码:lm85 1年及以上周期8折优惠码:lm80 #RioLU 9折优惠码:STJKWSRY 活动时间:即日起至2月20日 使用条件:季付或以上 #FacMata 从 2024-02-08 00:00 至 2024-02-25 23:59 使用优惠代码 LUNAR-NEW-YEAR-2024 在任意年付套餐上获取15%OFF #蛋挞云 8折优惠码:HappyNewYear2024 #CTC 9折优惠码:新春快乐 PRE套餐除外 #ENET 优惠码:enet2024 优惠额度:八折 适用套餐:限时套餐除外全场适用 截止日期:2024.2.25 23:59 同时购买或续费任意套餐可额外买一年送一月 / 买两年送三月 / 买三年送半年 #SaySS 优惠码:sayss 优惠额度:八折 截止日期:2023.2.24 23:59 购买或续费任意套餐可额外买一年送一月 / 买两年送三月 / 买三年送半年 #CoffeeCloud 8折优惠码:HAPPYNEWYEAR 2.8~2.15 #跑路云 九折年付优惠码:NEWYEAR2024SALE 2.05-2.14 #AcademyCityAirport 20%OFF、全场可用:bE2RZmgM 活动时间:即日起至2024年2月20日 #渡口 现在购买套餐可以使用七五折|新春优惠券 我们也将在除夕晚八点放出六五折优惠券,该优惠券有效期至初一中午十二点,所有优惠券都将有使用次数限制 #白月光 优惠码:春节快乐 有效期2024.2.9-2024.2.13 2.9号全场8.5折 10-13号全场9折 #雨燕云 普通套餐68折,不限时套餐8折,春节期间全节点0.1倍计费 普通套餐优惠码:NewYear2024 不限时套餐优惠码:Dragon2024 排名不分先后,因为随便排的

晓樱花庄🌸

@Cherryblossoms_channel · Post #2684 · 04.06.2022 г., 03:37

这次考试,GFW先后用上了DNS污染常规题以及国内中转反向墙的附加题, 考试初步结果: #第一梯队机场 仍然是优等生, #第二梯队机场 我手头有的表现不错的(节点在线率90%以上) 按拼音排序 #白月光 #BoomCloud #ByWave #CreamData #EXFLUX #FastLink #GaCloud #Gatern #Godetia #LiyingCloud #MilkCat #跑路云 #prprCloud #SaySS #Scrssr #Skicat #ssLinks #速蛙云 #Texon #V2Tun #v4speed #WestData