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

Пребарај: #grenada

当前筛选 #grenada清除筛选
Russian MFA 🇷🇺

@MFARUSSIA · Post #28277 · 07.02.2026 г., 12:02

🇬🇩 On February 7, #Grenada is celebrating its #IndependenceDay. Originally inhabited by Carib Indians, the island was discovered by Christopher Columbus in 1498. Until 1651, the indigenous people rebuffed the attacks by European colonisers, and even after the island had been taken over by the French, their spirit of independence endured. Proud and freedom-loving, the Caribs refused to submit, and entire tribes, including women and children, threw themselves from cliffs, choosing death over subjugation. The island later came under British rule, with Great Britain bringing in slaves from Africa in an attempt to quell the native people’s resistance. The Grenadian people’s long and arduous path to liberation from British colonial rule culminated in April 1974, when the country joined the Caribbean Community (#CARICOM) and was admitted to the UN in September. Once on the path of independence and socioeconomic progress, Grenada took in stride the challenges it faced, including the US military intervention in 1983, when the United States, in its customary heavy-handed manner, interfered in the internal affairs of the sovereign Grenadian state, seeking to impose a forced change of political leadership and effectively occupy the country. Despite ongoing external pressure, Grenada continues to pursue a sovereign foreign policy acting as a respected and independent member of CARICOM and consistently advocating for the Caribbean to remain a zone of peace. The country is also deepening mutually beneficial cooperation with regional countries, as well as with its numerous partners in Asia and Africa as part of South-South cooperation. 🤝 Diplomatic relations between our countries were established in 1979. They were severed following the US intervention and occupation of Grenada in 1983, but restored in 2002. Today, Russia’s interests in Grenada are represented on a non-resident basis by the Russian Embassy in Guyana. Grenada remains a reliable partner of the Russian Federation in the Caribbean region. 📆 September 24, 2025 marked an important milestone in Russia-Grenada relations. On the margins of the UN General Assembly, Foreign Minister Sergey Lavrov and his Grenadian counterpart Joseph Andall signed the Agreement on the Basic Principles of Relations between our countries, opening the way to expanded bilateral cooperation in areas of mutual interest. 🎉 We wish a happy national holiday to our Grenadian colleagues and the people of Grenada. We wish them peace, prosperity and continued success. #RussiaGrenada#RussiaLatinAmerica