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

Резултати

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

Пребарај: #prepper

当前筛选 #prepper清除筛选
独立人指南

@Dulirenorg · Post #958 · 28.02.2023 г., 03:06

https://wangpei.net/2023/02/28/%E4%B8%AD%E7%BE%8E%E8%8B%A5%E5%BC%80%E6%88%98%EF%BC%8C%E4%B8%AD%E5%9B%BD%E5%9F%BA%E7%9D%A3%E5%BE%92%E8%83%BD%E5%81%9A%E7%82%B9%E4%BB%80%E4%B9%88%EF%BC%9F/ #prepper

Hashtags

独立人指南

@Dulirenorg · Post #699 · 23.04.2020 г., 06:44

A Guide To Food Storage©Utah State University FEMA, the Federal Emergency Management Agency, advocates disaster preparedness. They advise people to be informed, make a plan, and prepare an emergency kit. A major part of that emergency kit is food and water for you and your family. But, what types of food should you store? How much food should you store? How will you cook it? Does it need to be refrigerated? How much water needs to be stored and how? Will these foods go bad during storage? Can my family or I become sick if we store these foods incorrectly? Can I throw these foods in my car in case I am forced to evacuate my home? These are all questions that you need to consider in both your planning and preparation stages. #household#prepper#foods

独立人指南

@Dulirenorg · Post #931 · 04.11.2022 г., 12:58

https://permacomputing.net/ 数字领域的朴门实践正在芬兰萌芽! New to permacomputing? Permacomputing is a more sustainable approach to computer and network technology inspired by permaculture. Permacomputing is both a concept and a community of practice oriented around issues of resilience and regenerativity in digital technology. In a time where computing epitomizes industrial waste, permacomputing encourages a more sustainable approach, maximizing hardware lifespans, minimizing energy use and focussing on the use of already available computational resources. We do this because humans are part of nature and technology is an extension of humans, and we acknowledge that technology has been used to harm nature. We want to find out how we can practice good relations with the Earth by learning from ecological systems to leverage and re-center existing technologies and practices. We are also interested in investigating what a permacomputing way of life could be, and what sort of transformative computational culture and aesthetics it could bring forward. If you want to know more, please start reading about what is permacomputing in essence, and then dive into its principles. Wiki Started in May 2022, the permacomputing wiki is where we maintain a set of principles, collectively document practical perspectives and interpretations of these principles, and offer more speculative reflections on permacomputing. The wiki is still at a very early stage of development, we are frequently working on it. This main page of the wiki is an index to the various topics covered. See "about" for a more detailed discussion about the wiki itself. #致呼吸不畅的数字生活#DIY#prepper

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