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

Резултати

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

Пребарај: #leipzig

当前筛选 #leipzig清除筛选
Kampf für unsere Zukunft ❣️

@Kampf_fuer_unsere_Zukunft · Post #51958 · 17.04.2026 г., 12:03

17.4.26: Der Mittelstand demonstriert,gegen diesen politischen und wirtschaftlichen Wahnsinn in Deutschland 💪 #Leipzig TEILEN Folgt mir auf Telegram ↕️↕️↕️ https://t.me/Kampf_fuer_unsere_Zukunft Chat-Kanal ⬇️⬇️⬇️ https://t.me/IavYc2SRFdY1OGY6

Hashtags

Kampf für unsere Zukunft ❣️

@Kampf_fuer_unsere_Zukunft · Post #51639 · 28.03.2026 г., 08:25

GEWALT UNTER KINDERN Mädchen verprügeln 12-jährige und filmen die Tat #Leipzig TEILEN Folgt mir auf Telegram ↕️↕️↕️ https://t.me/Kampf_fuer_unsere_Zukunft Chat-Kanal ⬇️⬇️⬇️ https://t.me/IavYc2SRFdY1OGY6

Hashtags

🏆 Info 288 - DEPORTES

@info288_deportes · Post #35684 · 23.10.2024 г., 21:20

⚽️🇪🇺Champions Leipzig 0-1 Liverpool#Champions#Leipzig#Liverpool Un solitario tanto de Darwin Núñez mantiene el pleno del Liverpool en esta Champions League. El delantero uruguayo tubó al Leipzig, que lo intentó de todas las formas posibles pero que sigue con su casillero de puntos a cero. https://www.marca.com/futbol/champions-league/cronica/2024/10/23/67192ad1268e3e13448b4577.html Otros marcadores Atalanta 0-0 Celtic Brest 1-1 Leverkusen Benfica 1-3 Feyenoord Manchester City 5-0 Sparta Praga Salzburgo 0-2 D. Zagreb Young Boys 0-1 Inter 🏆@Info288_deportes

🏆 Info 288 - DEPORTES

@info288_deportes · Post #35343 · 19.09.2024 г., 21:20

⚽️🇪🇺Champions Atlético 2-1 Leipzig#Champions#Atletico#Leipzig Por Giménez no pasan los formatos. Había sido de largo uno de los mejores del Atlético, pero, siempre a punto de lesionarse, en el tramo final del choque ya se había quedado tirado en el área propia, con Koke ayudándolo a estirar para evitar los calambres. El orgullo pudo más que el físico, en todo caso. Y Josema acudió al último remate con la fe que siempre ha llevado a gala. Y Griezmann se la puso con la derecha, que ya es ponérsela, para que a un salto poderoso correspondiera un cabezazo picado a contrapié del portero. En el minuto 90 y para el 2-1. Tres puntos que se quedan en el Metropolitano. El orgullo de la Vieja Guardia. https://www.marca.com/futbol/champions-league/cronica/2024/09/19/66e85d6ae2704e8b038b458c.html 🏆@Info288_deportes

W.A. Mozart - Serenate ex C - Ganz kleine Nachtmusik KV648 (official release) @JSO Leipzig Wolfgang Amadeus Mozart - Serenate ex C, auch "Ganz kleine Nachtmusik genannt" auf den Treppenstufen der Oper Leipzig. Die spektakuläre Neuentdeckung einer bisher unbekannten Mozart-Komposition lockte hunderte interessierte Zuhörerinnen und Zuhörer zur @LeipzigOper wo das Werk zuvor feierlich der internationalen Presse vorgestellt wurde. #YouTube#liked#very_little_night_music#leipzig#kv648