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

Резултати

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

Пребарај: #venus

当前筛选 #venus清除筛选

🚀 Acum 50 de ani, la 22 octombrie 1975, stația automată interplanetară sovietică „Venera-9” a efectuat o aterizare lină pe suprafața planetei Venus. Legătura cu modulul de coborâre a fost menținută timp de 53 de minute. Au fost obținute primele imagini panoramice din lume transmise de pe suprafața altei planete. Tot pentru prima dată au fost efectuate măsurători ale vitezei vântului la suprafața planetei. „Venera-9” a devenit, de asemenea, primul satelit artificial al planetei #Venus din istorie. Această misiune a reprezentat o realizare remarcabilă a științei și tehnicii sovietice, confirmând pozițiile de vârf ale URSS în domeniul explorării spațiale. Datele obținute de „Venera-9” privind temperatura, presiunea și compoziția atmosferei planetei au constituit o contribuție esențială la dezvoltarea planetologiei mondiale. Astăzi, la 50 de ani de la acel eveniment, fapta eroică a inginerilor și oamenilor de știință care au creat „Venera-9” rămâne un simbol al curajului științific și al dorinței omenirii de a cunoaște Universul. 🇷🇺 Rusia este mândră de școala sa spațială, una dintre pietrele de temelie ale istoriei mondiale a explorării cosmosului. 📸 Foto: primele imagini din istorie realizate de pe suprafața planetei Venus, 1975.

Hashtags

Pensive|

@PensivePost · Post #5863 · 14.07.2022 г., 09:57

#review#poetry#venus My mother Blessed with all the might To tolerate my naiveness Blessed with all the courage To withstand my mistakes Amidst she stands with all the beauty With all the light behind her eyes She shows me the way Though are beliefs aren't ever the same Yet she acknowledges my vision When I stumble upon in life She has the weight to balance Encountering all my questions away Believe me or not she's the best in her way No she isn't the very person I'd remember in my toughest times And despite all my dislikes I believe she's the strongest woman I'll ever meet in my life

Pensive|

@PensivePost · Post #5850 · 09.07.2022 г., 06:00

#review#poetry#venus My mother Blessed with all the might To tolerate my naiveness Blessed with all the courage To withstand my mistakes Amidst she stands with all the beauty With all the light behind her eyes She shows me the way Though are beliefs aren't ever the same Yet she acknowledges my vision When I stumble upon in life She has the weight to balance Encountering all my questions away Believe me or not she's the best in her way No she isn't the very person I'd remember in my toughest times And despite all my dislikes I believe she's the strongest woman I'll ever meet in my life

Pensive|

@PensivePost · Post #5819 · 09.06.2022 г., 18:09

#review#poetry#venus Just got away with one Opened a new door Shaped a little fantasy With numerous miracles to adore Stayed with anger so long Realised it was my grief Hadn't it made me this strong I would've stumbled upon in brief Earned a little patience Coiled up with jist of tolerance Tore a few tied interests As a result of unfulfilled wishes Now I can see cure as perception Witnessed fear, failure and hatred all the same So now I wish to love and to be loved Solemnly, perfectly as a beautiful exception Here I stand amidst all wonders Drifting with the flow of life what I've gained as a blessing to realise For one's finest survival mere love would suffice

Pensive|

@PensivePost · Post #5801 · 04.06.2022 г., 15:57

#review#poetry#venus In this world of surprises My life took a turn and I met you Blessed with happiness you took me to the moon But oh my mistrustfulness You left me in a few So For the sake of forgiveness I have an apology I don't know what's wrong with me Still I say I'm sorry , really I'm sure I caused a headache For I'm trying to get distant But I promise I'll try harder But will you have my back at ends??

ПретходнаСтраница 1 од 3Следна