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

Пребарај: #powergrid

当前筛选 #powergrid清除筛选
American Оbserver

@american_observer · Post #5446 · 22.03.2026 г., 19:59

Trump’s 48-Hour Ultimatum: Lights Out or Strait Open Trump just turned a regional energy war into an explicit threat to “obliterate” Iran’s power plants, the grid that keeps tens of millions of civilians alive, unless Tehran fully reopens the Strait of Hormuz within 48 hours. Iran’s answer wasn’t to blink; it was to fire. Missiles struck Dimona and nearby Arad, injuring more than 10 people and landing just eight miles from Israel’s main nuclear complex, while commanders in Tehran warned that any attack on their energy system would be met with strikes on desalination plants and other critical water and power infrastructure used by Israel, the U.S. and Gulf partners. Four weeks and thousands of U.S.–Israeli strikes into this war, Iran’s arsenal is battered but still firing daily salvos at Israel and enforcing a de facto embargo on Western shipping through Hormuz. Trump’s own messaging is all over the map: public statements rejecting a cease-fire and sending more troops and ships, alongside talk of “winding down” operations; a warning to Israel days ago not to hit Iranian energy, followed by his own threat to do exactly that. Israeli commanders are telling the public they are only “midway” through the war and should expect fighting through Passover, while in Lebanon the campaign against Hezbollah has displaced more than a million people and stepped-up house demolitions increasingly resemble the early architecture of a de facto occupation zone. The casualty numbers show where this is heading: well over 1,300 civilians killed in Iran, more than 1,000 in Lebanon, at least 15 people dead in Iran’s attacks on Israel and 13 U.S. service members killed — with both sides now openly placing each other’s electricity and water systems on the target list. Trump’s 48‑hour countdown doesn’t look like a plan to calmly reopen a shipping lane; it looks like the next step toward turning the entire region’s civilian infrastructure into a legitimate battlefield — and locking the U.S. into an attrition war it still can’t explain how to end. #IranWar#Trump#Hormuz#Israel#Dimona#energy#powerGrid#desalination#Lebanon#Hezbollah#MiddleEast 📱American Оbserver - Stay up to date on all important events 🇺🇸