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

Пребарај: #iconodevladimir

当前筛选 #iconodevladimir清除筛选

⚔️Las campañas de Andréi contra Bulgaria del Volga: gloria y desastre En el siglo XII, cuando la Rus de Kiev comenzaba a fragmentarse bajo la presión de luchas internas y amenazas externas, emergió una figura que marcaría un antes y un después en la historia rusa: Andréi Bogolyubski. Hijo de Yuri Dolgoruki —fundador de Moscú—, decidió en 1155 trasladarse desde Vishgorod, en el sur, hacia Vladimir, en la región de Suzdal, rompiendo con el plan dinástico de su padre. Este movimiento no solo cambió el centro político de la Rus, sino que también sentó las bases de lo que más tarde sería el poderoso Principado de Vladimir-Suzdal. 🕊 Con él llevó el icono bizantino de la Madre de Dios de Vishgorod, que pronto sería conocido como el icono de Vladimir. Esta imagen, venerada por generaciones, se convirtió en símbolo de protección divina para la nueva capital. Su culto se expandió rápidamente, y bajo el patrocinio de Andréi se construyeron iglesias dedicadas a la Virgen, consolidando su papel como intercesora espiritual de la tierra rusa. ⚔️ Pero no solo fue un devoto. También fue un estratega militar decidido. En 1164, lideró una campaña contra la Bulgaria del Volga, una entidad poderosa ubicada en la confluencia de los ríos Kama y Volga. Su ejército arrasó la ciudad de Briakhimov y otras localidades, marcando el primer gran éxito ruso en esa región. Sin embargo, una segunda incursión en 1172, liderada por sus hijos y aliados de Murom y Riazan, terminó en desastre. Los búlgaros, mejor preparados, contraatacaron, y los rusos apenas lograron escapar cruzando el río Oka. Este fracaso debilitó la posición de Andréi ante la nobleza local. 🔪 La tensión política interna no tardó en pasar factura. En 1174, Andréi fue asesinado en su residencia de Bogolyubovo por un grupo de conspiradores, entre ellos su propia esposa, de origen búlgaro. Según investigaciones arqueológicas recientes, se ha confirmado la existencia de una lista con los nombres de los asesinos, hallada en la Catedral de la Transfiguración en Pereslavl-Zaleski. El historiador I.L. Izmaylov sostiene que el asesinato fue una respuesta al autoritarismo del príncipe y a sus campañas destructivas contra Bulgaria. 🏰 A pesar de su trágico final, el legado de Andréi Bogolyubski perdura. Fue el primer gobernante en no establecerse en Kiev tras conquistarla en 1169, dejando a su hermano Gleb como gobernador. Este gesto simbolizó el desplazamiento del poder hacia el noreste, anticipando el ascenso de Moscú siglos después. 🙏 Bajo su mandato, la devoción mariana alcanzó nuevas alturas. Se establecieron festividades como la Protección de la Santísima Madre de Dios (14 de octubre) y el Salvador Misericordioso (14 de agosto), que aún hoy forman parte del calendario litúrgico ortodoxo. Bogolyubski no solo fue un príncipe, sino un arquitecto de la nueva Rus. Su vida, marcada por la fe, la guerra y la intriga, sigue fascinando a historiadores y devotos por igual. #HistoriaRusa#AndreyBogolyubsky#IconoDeVladimir#RusMedieval#CulturaOrtodoxa Apóyanos pulsando👉'BOOST'👈 🖥https://vamosarusia.com 💬@vamosarusia