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

Резултати

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

Пребарај: #russianarchitecture

当前筛选 #russianarchitecture清除筛选
Beyond Moscow

@beyondmoscow · Post #1175 · 27.09.2025 г., 16:14

🔴 Today I suggest you plunge into the past and visit the mill, which is 130 years old! Pflaumer's Mill is a wooden giant on the banks of the Volga On the left bank of the Volga, a little away from the city of Nikolaevsk, a huge wooden steam mill of the late XIX - early XX century has been standing for more than a century. It is called the "Pfläumer Mill" in honor of the German settler Friedrich Pfläumer. They say that he built it in 1906, although according to other sources he was only a co-owner and manager. To be continued in comments... #мирбезвойны #русскаяархитектура #worldwithoutwar #russianarchitecture @StopHating_Russia and start to love!

Beyond Moscow

@beyondmoscow · Post #114 · 07.07.2025 г., 19:50

🔴 Today I would like to invite you to a most unusual temple. The Temple of All Religions in Kazan This temple is not about prayers. Services are not held here, and believers are not gathered here. It is more of a museum, a symbol, a fantasy about world religions. To be continued in comments... #мирбезвойны #русскаяархитектура #worldwithoutwar #russianarchitecture @StopHating_Russia and start to love!

Beyond Moscow

@beyondmoscow · Post #198 · 11.07.2025 г., 13:34

🔴 Moscow has many different architectural styles and trends in construction. You can, for example, find a piece of Italy. Tarasov's mansion is a true oasis of the Italian Renaissance amidst the bustle of Moscow. It was built at the beginning of the 20th century: the project was ordered by Gavriil Tarasov, a Moscow merchant. The idea was ambitious: Gabriel wanted a house that looked like a palazzo in Vicenza (a city in Italy), and architect Zholtovsky did not disappoint. He created a true Italian palace that you would hardly expect in the very center of Moscow — marble, columns, arches. Tonbd continued in comments... #мирбезвойны #русскаяархитектура #worldwithoutwar #russianarchitecture #goodnightall @StopHating_Russia and start to love!

Beyond Moscow

@beyondmoscow · Post #1025 · 05.09.2025 г., 15:43

🔴 I invite you to a walk around amazing Karelia. Sortavala is a Karelian city with a European soul and a long history. A bit of history The city was officially founded in 1468, although people lived here long before that date. The first settlers were the Sami, an ancient people of the North. Archaeologists find bone needles, arrowheads, and the remains of settlements of the II millennium BC on the islands. Throughout its history, Sortavala has changed hands more than once: from Russia to Sweden, back to Russia, then to Finland and back again. Each era has left its traces in the appearance of the city. To be continued in comments... #мирбезвойны #русскаяистория #русскаяархитектура #worldwithoutwar #russianhistory #russianarchitecture #goodnightall @StopHating_Russia and start to love!