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

Резултати

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

Пребарај: #rosmei

当前筛选 #rosmei清除筛选

Сейчас в портфеле издательства Rosmei следующие известные тайтлы (список не исчерпывающий): 🔹"Как выжить в роли главного злодея" Ии Ии (How to Survive As a Villain by Yi Yi Yi Yi, 2018) 3vols 🔹"Топить в вине бушующее пламя печали" Прист (Drowning Sorrows in Raging Fire by Priest, 2019) 5vols 🔹"Южный алтарь" Тан Цзюцин (Nan Chan by Tang Jiu Qing, 2018) 3vols 🔹"Я тебе нравлюсь, не так ли?" Лю Тяньи (Don't you like me by Lu Tianyi, 2017) 2vols 🔹"Лю Яо: Возрождение клана Фуяо" Прист (Coins of Destiny by Priest, 2014) 4vols 🔹"Земля Онлайн" Мо Чэньхуань (The Earth is Online by Mo Chen Huan, 2017) 8-9vols 🔹"Калейдоскоп смерти" Си Цзысюй (Kaleidoscope of Death by Xi Zixu, 2018) 6vols 🔹"Глобальный вступительный экзамен" Му Сули (Global Examination by Mu Su Li, 2019) 4vols 🔹"Вино и ружьё" Мэнъе Мэнъе (Wine and Gun by Meng Ye Meng Ye, 2020) 7vols (перевод названия вольный) 🔹"Ша Цин или Последний убийца" У И (The Killer of Killers by Wu Yi, 2018) 3vols 🔹"Отбракованные" Прист (The Defectives by Priest, 2017) 6vols Еще раз покажу обложку детективной новеллы "Wine and Gun" Meng Ye Meng Ye, которую я жду с особым нетерпением. #China#novel#Rosmei

Очень нравится оформление суперобложек новеллы "Топить в вине бушующее пламя печали" Прист от сингапурского издательства Rosmei. Обложки первого, четвертого и пятого томов от 鹤止山川 (Twitter) Издательство взяло за практику выкладывать прологи или первые главы, чтобы читатели могли оценить качество перевода (считаю, что это хорошая стратегия). Вот здесь можно оценить перевод пролога к Лехо. Всего ожидается пять томов. #China#novel#Priest#LieHuo#Rosmei

Издательство Rosmei показало обложки первых трех томов новеллы Прист "Дефектные" или "Отбракованные" (The Defectives / Can Ci Pin / 残次品) от V.Scorpio. Нравится, что издательство не боится выдавать "абстрактные" обложки без персонажей — выглядит весьма атмосферно. Всего запланировано 6 томов. На русском сейчас можно прочитать 57 глав из 197 основных (плюс 6 экстр) #China#novel#Priest#CanCiPin#Rosmei

Издательство Rosmei показало арт, который мы увидим на обложке первого тома новеллы Му Сули "Глобальный вступительный экзамен" #China#novel#MuSuLi#GaoKao#Rosmei

Внезапное: Rosmei показали обложку первого тома новеллы "Земля Онлайн" Мо Чэньхуаня. А я как раз сегодня закачала ее на свою читалку... Считаю, что знак свыше. #China#novel#MoChenHuan#EarthIsOnline#Rosmei

Издательство Rosmei показало обложку второго тома новеллы "Wine and Gun" Mengye Mengye. И это просто восторг и трепет... #China#novel#WineAndGun#MengYeMengYe#Rosmei

Не перестаю удивляться тому, какой широкий охват авторов и жанров демонстрирует издательство Rosmei. Недавно они анонсировали покупку прав на издание двух новелл Нин Юань (Ning Yuan / 宁远) — популярного автора новелл в жанре байхэ (GL). Причем писательница была так мила, что согласилась написать для англоязычных публикаций новелл "At The World's Mercy" (我为鱼肉) и "The Creator's Grace" (造物的恩宠) дополнительные главы. Сегодня были показаны удивительно красивые арты для будущих обложек новеллы"At The World's Mercy" (257ch+7ex). Всего запланировано 8 томов. Это историческая новелла с тропом "от врагов к возлюбленным", много политики и придворных интриг. #China#novel#NingYuan#AtTheWorldsMercy#Rosmei

У издательства Rosmei в августе было три анонса детективных новелл — "Wine and Gun" Mengye Mengye (2020), "The Killer of Killers" Wu Yi (2018) и еще одной новеллы, о которой я раньше не слышала. Поскольку сегодня они показали обложки этого двухтомного (!) тайтла, я решила разузнать поподробнее, что это и о чем это. Автор — Wu Chen Shui (吴沉水). В анонсе новеллу перевели, как "Enchanted", но в итоге поменяли на "Obsessed". Поскольку иероглифы 着魔 допускают оба перевода (и "околдованный", и "одержимый"), видимо, исходили из того, что ближе к сюжету. В новелле 81 основная глава и 12 экстр (2012). Ссылка на страницу новеллы на сайте jjwxc и на оригинальный текст. На русский и английский переводов не видела. Превью первой главы от издательства Rosmei. Описание: Несколько причудливых убийств обнажают уродливые желания, скрывающиеся глубоко в сердце. Как бы человек ни старался сдерживать себя, убегать от этого и сопротивляться этому, любой может стать одержимым. Кто-то любовью, кто-то ненавистью, кто-то властью, кто-то амбициями. Я одержим тобой, но кем одержим ты? Предупреждение от издательства: новелла содержит упоминания о насилии и темах, связанных с психическим здоровьем, сексуальным насилием, гомофобией, расизмом и т. д. #China#novel#WuChenShui#Obsessed#Rosmei#анонсы