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

Пребарај: #greatposterwall

当前筛选 #greatposterwall清除筛选
PT风向旗

@Ptfxq · Post #831 · 31.12.2024 г., 16:00

祝各位 Pter 们元旦快乐!按照惯例,以下为各站在元旦期间的活动汇总,欢迎群友投稿补充: #1PTba #站点免费 至 01-02 09:00:00 #Audiences#观众 #站点免费 12.31 22:00:00 至 01.01 23:59:59 #官种免费 01.02 00:00:00 至 01.03 23:59:59 #BTSchool#学校 #开放注册 即日起至 01.01 #站点免费 01.02 至 01.04 #BakaBT #站点免费 至 1 月 13 日 00:00 CET #CarPT#车站 #站点免费 01.01 至 01.03 #CinemaTIK#TIK #站点免费 7 天 #CHD#岛 #站点免费 站免 1 天 #HHanclub#HHan#憨憨 #开放邀请 01-01 VIP+开放邀请 #HiTpt#百川PT#百川 #站点免费 01-01 00:00 至 01-03 #kufei#库非 #站点免费 12-31 00:00 至 01-02 00:00 #GPW#greatposterwall#海豹 开放答题进站活动 12-29 00:00 至 01-05 23:59 #JPTV#JPTVCLUB #站点免费 剩余 7 天+ #LemonHD#柠檬 音乐区限时全员开放 全区免费下载 音乐入场券限时五折,仅需 40,5000 魔力 发种活动,详情请至站内查看 #Mteam#馒头 #站点免费 01-03 00:00 开始站免 3 天 #NicePT#老师 #开放邀请 每人 10 枚临时邀请 01.01 至 01.03 有效,禁止公开平台发邀 #OB#Ourbits#我堡 #站点免费 至 01-02 00:00 #Piggo#猪猪 #站点免费 01.01 00:00:00 至 01.01 23:59:59 限时红包雨活动,元旦节当天每逢整点,站点页面将开启红包雨,争抢点击红包可获得魔力、上传量、限时 VIP 等奖励 勋章商店限时上架 2025 元旦勋章 #TTG #站点免费 至 01-04 21:59 #U2 #站点免费 01-01 一天 #wintersakura #站点免费 12-25 00:00:00 至 01-10 00:00:00

PT风向旗

@Ptfxq · Post #651 · 26.04.2024 г., 01:36

关闭登录的内站登陆方法、各站点的官方群组、频道、机器人等信息。本条消息将及时更新,转发消息请点击👆🏻“PT风向旗“👆🏻查看最新版本 因为 TG 的单条消息的字数限制,故切分消息并按照首字母排序。共三条消息,本条消息为第一条,包含数字开头及 A-G 开头的站点。 #1PTBA 官方频道:https://t.me/on1ptba 官方群组:https://t.me/ptbar_Chat 关门登录:印象中没关过门 #2xfree 官方频道:https://t.me/group_2xfreeOrg 官方群组:https://t.me/vr2xfreechat 关门登录:印象中没关过门 #3wmg#芒果 官方群组:https://t.me/www3wmg #52pt 官方群组:https://t.me/joinchat/NcihYBedvjXZIG5qEKXcpQ #Audiences#观众 官方机器人:https://t.me/Audiences_Official_Bot 官方频道:https://t.me/Audiences_Channel 官方群组:绑定官方机器人加入 关门登录:通过官方机器人获取登录链接 #AGSV#AGSVPT 官方机器人:https://t.me/agsvpt_account_bot 官方群组:https://t.me/AgsvPT_public 关门登录:在网址后加 "/agsvpt" 即可。 #Azusa#梓喵 官方机器人:https://t.me/AzusaServiceBot 官方群组:绑定官方机器人加入 关门登录:通过官方机器人获取登录链接 #BTS#BTSchool#学校 无任何官方频道、群组、机器人。 非官方群组:https://t.me/btschoolclub 关门登录:只能自行备份 #BYR#BYRPT#北邮#北邮人 官方频道:https://t.me/byr_status 关门登录:印象中没关过门 #CarPT#车#车站 什么都没找到 #CHD#CHDBits#彩虹岛#岛 官方群组:https://t.me/+4GL9H6BlQrczNmM5 关门登录:不定期在 QQ 群内发送登录链接。 #Cyanbug#大青虫 官方群组:https://t.me/cyanbug 关门登录:印象中没关过门 #CMCT#SSD#春天 官方机器人:https://t.me/cmct_bot 官方群组:绑定官方机器人加入 官方频道:https://t.me/+xlhFGICfmOZmMGU9 非官方资讯频道:https://t.me/cmc_tnews 官种 RSS 官方频道:https://t.me/ssd_offical_rss 保种区 RSS 官方频道:https://t.me/ssd_guarder_rss 关门登录:通过官方机器人获取登录链接 #Dajiao#打胶 官方群组:https://t.me/DaJiaoPT_Group 关门登录:印象中没关过门 #DiscFan#碟粉 官方 RSS 机器人:https://t.me/DiscFan_RSS_Bot 官方 RSS 频道:https://t.me/DiscFanChannel 官方群组:https://t.me/discfanofficial 关门登录:印象中没关过门 #DICMusic#DIC#GreatPosterWall#GPW 官方机器人:https://t.me/DICGate_Bot 官方频道:https://t.me/DolphinIsComing 官方群组:https://t.me/joinchat/I5xEuEgEQ29Q75zV5WNW4g 账号申诉群:https://t.me/joinchat/LBgGJQs8DKhO7yOHFvH9Jw 关门登录:通过官方机器人获取登录链接 #DragonHD#龙之家 什么都没找到 #FRDS#KEEPFRDS#朋友 官方机器人:https://t.me/NasaRelayBot 官方频道:https://t.me/LetUsKeepFriendsForever 官方群组:https://t.me/+FrUb_hj2hodiNmZl 压制交流群:https://t.me/+V3PD9djMoUr4v38n 关门登录:印象中没关过门 #FreeFarm#自由农场 官方机器人:https://t.me/FFarmBot 官方频道:https://t.me/+TZrLdBvaoA4zMmY9 官方群组:https://t.me/+eItLwsrYPzlmNTQ1 关门登录:通过官方机器人获取登录链接 #FSM 官方机器人:https://t.me/FsmPrivateBot 官方频道:https://t.me/FsmNotify 官方群组:https://t.me/+9vgDC8VFVNlkMjE0 关门登录:印象中没关过门,如果登录不上挂个梯子试试 #GTK#ptgtk 什么都没找到 #GGPT#GameGamePT 官方频道:https://t.me/GGPTcom 官方群组:https://t.me/gamegamept 关门登录:印象中没关过门