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

Резултати

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

Пребарај: #doyouknow

当前筛选 #doyouknow清除筛选
gov.sg

@Govsg · Post #3022 · 25.06.2025 г., 09:22

#DoYouKnow that your NRIC number alone doesn’t prove who you are? Only your physical NRIC or Singpass – with security features and your photo – can prove your identity. Credit: MDDI

Hashtags

gov.sg

@Govsg · Post #3010 · 11.04.2025 г., 04:38

#DoYouKnow how the US tariffs impact the global economy, and what it means for Singapore? Hear from Prime Minister Lawrence Wong on how the Government is helping individuals and businesses cope and stay resilient. ⬆️

Hashtags

gov.sg

@Govsg · Post #2378 · 09.08.2024 г., 04:10

📢The Weekly Wrap – 9 August 2024 1️⃣ Key takeaways from the proposed Income-Allianz Deal If the deal goes through, existing policyholders will not be affected. The terms of existing contracts remain unchanged. The Monetary Authority of Singapore (MAS) will hold Allianz and Income to these commitments. 🔗 Find out more: https://go.gov.sg/i-a 2️⃣#DoYouKnow what is Singapore’s ’30 by 30’ vision? To enhance food security, the “30 by 30” vision aims to produce 30% of SG nutritional needs by 2030. While local farms face challenges, the Singapore Food Agency (SFA) is providing support by making land and infrastructure available, and looking to increase demand for local produce. 🔗 Find out more about the 30 by 30 vision: ourfoodfuture.gov.sg/30by30 3️⃣It’s vacation-planning time! Wait no more – here are 2025’s public holidays at a glance. Mark your calendars and enjoy a well-deserved break! 🔗 Check them out here: https://go.gov.sg/ph-2025

Hashtags

gov.sg

@Govsg · Post #2111 · 10.03.2024 г., 04:36

#DoYouKnow that MND will be launching 19,600 BTOs this year, including Shorter Waiting Time (SWT) flats with wait times of less that 3 years? Find out more ⬆️ Infographics: MND

Hashtags

gov.sg

@Govsg · Post #1827 · 05.11.2023 г., 01:04

#DoYouKnow what is the secret to a joyful Deepavali? Let the Nallaa Irukku Catering family show you their “secret ingredient” to a delightful heartfelt Deepavali celebration! ▶️Watch the full video here: https://youtu.be/rhzBPTd1qeM

Hashtags

gov.sg

@Govsg · Post #1826 · 01.11.2023 г., 08:23

#DoYouKnow what is the secret ingredient to running a good catering company? Let Grandpa Nallathamby reveal his secret this Deepavali! ▶️ Watch The Secret Ingredient trailer here: https://youtu.be/KxQwyk-VZ_A

Hashtags

gov.sg

@Govsg · Post #1748 · 29.06.2023 г., 04:18

#DoYouKnow that there will be National Day celebrations at the heartlands of Bedok, Jurong West, Toa Payoh, Woodlands and Tampines over the 5-6 Aug weekend? Check out the exciting events and you can also apply to be a volunteer at the festivals here: go.gov.sg/gasg23-hlf3! #TeamNila#GASG2023#GetActiveSG

Hashtags

gov.sg

@Govsg · Post #2045 · 05.03.2024 г., 11:02

#COS2024#DoYouKnow: From 2028, students will be given more flexibility to customise their post-secondary learning with Full Subject-Based Banding. Infographics: MOE

gov.sg

@Govsg · Post #2289 · 02.07.2024 г., 10:02

#SGBudget2024#Doyouknow how much U-Save and S&CC rebates eligible HDB households will receive in July? Click on the images to find out more ⬆ For more info: go.gov.sg/jul24-usavescc

gov.sg

@Govsg · Post #2140 · 24.04.2024 г., 05:34

#Doyouknow what are the #SGBudget2024 benefits you are getting in the next few months? Watch to find out more ⬆️ 👉 Check the estimated benefits you may receive: go.gov.sg/supportforyoucalculator Video: Ministry of Finance

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