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

Резултати

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

Пребарај: #pop

当前筛选 #pop清除筛选
音乐小本本

@PaulsNote · Post #937 · 30.10.2023 г., 03:43

原神BGM - 枫丹 真正的安眠处 水仙的安任务结尾处bgm,想在游戏中再次听到只能卡bug了。 后面的四重奏写的很有水平!希望Hoyo-mix可以写更多室内乐! 附:官方稿: 此次枫丹的音乐设计,在配器选择上运用了曼托林、鲁特琴、维奥尔琴等经典的欧洲乐器;为了增添浪漫气息,还增加了体现都市时尚感的爵士元素、颇具戏剧感的华尔兹元素以及雍容华丽的巴洛克元素。据HOYO-MiX(米哈游旗下游戏音乐创作团队)成员介绍,主创团队基于枫丹整体泛欧洲的风格基调,参考文艺复兴至浪漫主义时期的德奥音乐风格,也包含了圣桑、加布里埃尔·弗雷、莫里斯·拉威尔这一谱系的法国音乐风格。 #Pop https://youtu.be/N7wowNflnu4?si=OcXLnYe-0EmCXMts

Hashtags

Mirracoin Новости

@MirraChannel · Post #125 · 15.05.2024 г., 10:58

#крипто#база#PoP Что такое Proof of Personhood? Алгоритм консенсуса - Proof of Personhood («доказательство личности» или кратко PoP). Использует механизмы подтверждения «человечности» (personhood) и уникальности индивидуума, гарантируя, что каждый участник проекта получит равный голос и долю вознаграждения. 🤔Зачем это нужно? Метод получил распространение из-за угроз недобросовестного использования технологии дипфейк и по причине того, что злоумышленники создают множество поддельных аккаунтов для манипулирования голосованием или распределением наград. 🔥 PoP обеспечивает естественное ограничение скорости за счет верификации учетной записи, что, по сути, исключает возможность проведения атаки Сивиллы в заметных масштабах и позволяет фильтровать контент, что помогает бороться с вирусным распространением дезинформации, генерируемой ИИ. 😎Примеры проектов использующих технологию PoP: 📌Gitcoin Passport - проект собирает «марки» с аутентификаторов Web2 и Web3, служащие учетными данными для кроссплатформенной проверки личности без разглашения приватной информации. 📌Proof of Humanity - проект объединяет сети доверия с обратными тестами Тьюринга, реализует разрешение споров и создает список подтвержденных пользователей. 📌BrightID - проводит «верификационные вечеринки» по видеосвязи для взаимной верификации через систему Bitu, требующую, чтобы за человека поручилось достаточное количество верифицированных пользователей. 📌World ID проекта Worldcoin - открытый протокол идентификации, не требующий разрешения, который анонимно проверяет личность человека, используя доказательства нулевого знания. @MirraChannel😎

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