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

Резултати

Пронајдени 1,453 слични објави

Пребарај: #linux

当前筛选 #linux清除筛选
2.5次元日常 🍉

@acgndaily · Post #49966 · 02.04.2026 г., 19:43

Steam 用户中使用 Linux 比例达到 5.33% 2026-04-02 12:57 by 头号书迷 Valve 公布的 2026 年 3 月 Steam 硬件和软件调查显示,玩家运行的操作系统中 Linux 比例达到了 5.33%。和 2026 年 2 月的情况类似,Valve 的统计数据可能再次出现异常,因为 2 月 Linux 的比例仅为 2.23%,一个内月突然翻一倍以上概率不大。Windows 操作系统的比例降至了 92.33%,OSX 占 2.35%。Linux 用户比例此前从未超过 5%,超过 3% 也仅为一次。今年 2 月 Steam 简体中文用户比例数据异常,超过了五成,3 月 Valve 看起来修正了错误,简体中文用户比例减少 31.85% 占 22.75%,英语用户增加 16.82% 占 39.09%。用户使用英特尔 CPU 的比例占 55.82%。AMD 占 44.17%。 store.steampowered.com/hwsurvey/ #Linux

Hashtags

Linuxgram 🐧

@linuxgram · Post #18794 · 14.05.2026 г., 17:36

📰 MSI Claw Configuration Driver For Linux Coming Together With The Assistance Of AI One of the latest Linux gaming handheld drivers being worked on is the MSI Claw Configuration Driver for controller configuration... 🔗 Source: https://www.phoronix.com/news/MSI-Claw-Configuration-Driver #linux

Hashtags

Linuxgram 🐧

@linuxgram · Post #18779 · 13.05.2026 г., 18:13

📰Rust stalks IBM mainframes, but only in nightly form Patch series would bring memory-safe code to Linux's s390 port, with compiler caveats attached. 🔗 Source: https://www.theregister.com/on-prem/2026/05/13/rust-stalks-ibm-mainframes-but-only-in-nightly-form/5239710 #linux

Hashtags

Linuxgram 🐧

@linuxgram · Post #18774 · 13.05.2026 г., 12:46

📰 Linux gains more critical Windows apps: 3D Movie Maker and Space Cadet Pinball Further demonstrating its role as industry default OS the versatility of modern porting tools. 🔗 Source: https://www.theregister.com/oses/2026/05/13/linux-gains-more-critical-windows-apps-3d-movie-maker-and-space-cadet-pinball/5239455 #linux

Hashtags

Linuxgram 🐧

@linuxgram · Post #18770 · 13.05.2026 г., 08:37

📰Discord joke that it's The Year of the Linux Desktop The Year of the Linux Desktop is finally here! Sort of. Well, not really but it's getting there and Discord has seen some nice improvements lately.Read the full article on GamingOnLinux. 🔗 Source: https://www.gamingonlinux.com/2026/05/discord-joke-that-its-the-year-of-the-linux-desktop/ #linux

Hashtags

Linuxgram 🐧

@linuxgram · Post #18758 · 12.05.2026 г., 14:15

📰 Fwupd 2.1.3 Linux Firmware Updater Adds Support for SHIFT6mq and SHIFTphone 8 Fwupd 2.1.3 Linux firmware updater is now available for download with support for the SHIFT6mq and SHIFTphone 8 modular smartphones, as well as various other improvements. 🔗 Source: https://9to5linux.com/fwupd-2-1-3-linux-firmware-updater-adds-support-for-shift6mq-and-shiftphone-8 #linux

Hashtags

Linuxgram 🐧

@linuxgram · Post #18752 · 11.05.2026 г., 21:59

📰 I tested every Linux desktop and realized fragmentation isn't a problem anymore Choosing a Linux desktop used to be a make-or-break decision, but nowadays, things are much less complicated. 🔗 Source: https://www.xda-developers.com/tested-every-linux-desktop-realized-fragmentation-problem-anymore/ #linux

Hashtags

Linuxgram 🐧

@linuxgram · Post #18746 · 11.05.2026 г., 13:18

📰 F2FS Preparing FSERROR Reporting Support Introduced in Linux 7.0 was FSERROR as generic I/O error reporting infrastructure. Linux to that point had no standardized mechanism for reporting metadata corruption or file I/O errors to user-space with each file-system doing its own thing. The Flash-Friendly File-System (F2FS) is now the latest Linux file-system preparing for FSERROR usage... 🔗 Source: https://www.phoronix.com/news/F2FS-FSERROR #linux

Hashtags

Linuxgram 🐧

@linuxgram · Post #18744 · 11.05.2026 г., 11:26

📰 Linux 7.0.6 Released To Finish Mitigating the Dirty Frag Vulnerability Linux 7.0.6 is out as stable this morning to finish mitigating the Dirty Frag vulnerability that was made public last week... 🔗 Source: https://www.phoronix.com/news/Linux-7.0.6-Released #linux

Hashtags

Linuxgram 🐧

@linuxgram · Post #18742 · 11.05.2026 г., 09:40

📰 PeaZip 11.1 File Archiver Adds Security Fixes and Updates 7z Backend PeaZip 11.1 updates its 7z backend, fixes security issues, and improves archive extraction workflows across Linux and Windows. 🔗 Source: https://linuxiac.com/peazip-11-1-file-archiver-adds-security-fixes-and-updates-7z-backend/ #linux

Hashtags

123•••100•••121122
ПретходнаСтраница 1 од 122Следна