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

Резултати

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

Пребарај: #q2

当前筛选 #q2清除筛选
KNAUF Uzbekistan

@knaufuzbekistan · Post #602 · 18.09.2023 г., 05:00

​​👷‍♂️Qanday qilib ustalar bilan bir xil tilda gaplashish mumkin? Qanday qilib keraksiz joylarda devorlarni oynadek tekislash boʻyicha ortiqcha ishlar bilan ovora boʻlmaslik va vaqt va pulni tejab qolish mumkin? Ikkala tomon - Buyurtmachi ham, Ijrochi ham, "gulqog'ozning orqasi" yoki "kafelning orqasi" ta'rifini bir xil tushunishiga qanday amin bo'lishimiz mumkin? ☝️Bu yerda yuzalarni qoplash sifatini eng past Q1dan yuqori daraja, premium sinf Q4 ga qadar tasniflaydigan maxsus ishlab chiqilgan KNAUF Q1-Q4 tizimi ("Q" - nemis tilidagi "Qualität"dan olingan, sifat) yordam beradi. U ham quruq qurilish ishlari, ham suvoqga asoslangan tizimlar uchun mos keladi. 🧐Shuni esda tutish kerakki, Q2 sifat darajasi keyingi Q3 va Q4 darajalari uchun asos hisoblanadi. Ya'ni, to'satdan rejalaringiz o'zgarib qolsa va siz xonani pardozlash uchun dekorativ suvoq (Q2) o'rniga, masalan, Venetsiya suvogʻi (Q4) bilan ishlov berishga qaror qilib qolishingiz hozir qanday tayyorgarlik koʻrishingizga bog'liq. Q2 qanday koʻrinishga ega? Ushbu yuza sifati asboblardan qolgan izlar va shpaklyovka eritmasidan yuzaga kelgan notekisliklarni, shuningdek 1 mm gacha oʻyiq va qirilgan joylarni koʻrinishiga imkon beradi. 1 m uchun 1 mm gacha bo'lgan vertikal ogʻishlar (lekin xonaning butun balandligi uchun 5 mm dan koʻp emas), shuningdek soyalar yon nurlardan tushadi. Agar Siz yakunlovchi qoplama sifatida suyuq gulqog'ozi, teksturali bo'yoq yoki dekorativ suvoqni tanlasangiz, Q2 yuza sifati eng tejamli va eng tezkor yechimdir.👌 - - - - - 👷‍♂️Как разговаривать с мастерами на одном языке? Как не заморачиваться лишней работой по зеркальному выравниванию стен там, где это не обязательно, и экономить время и деньги? Как быть уверенным, что определение “под обои” или “под кафель” обе стороны, Заказчик и Исполнитель, понимают одинаково? ☝️Здесь поможет специально разработанная КНАУФ система Q1-Q4 («Q» — от немецкого Qualität, качество), которая классифицирует качество отделки поверхности от низшего Q1 до высшего, премиум класса, Q4. Она подходит как для сухого строительства, так и для систем на базе штукатурок. 🧐Следует помнить, что уровень качества Q2 является базовым для дальнейших уровней Q3 и Q4. То есть, как вы подготовитесь сейчас, будет зависеть, насколько качественно вы сможете обработать поверхность, если вдруг планы поменялись и вы решили вместо декоративной штукатурки (Q2) отделать комнату, например, венецианской штукатуркой (Q4). Как выглядит Q2? Данное качество поверхности допускает видимые отпечатки от инструментов и наплывы шпаклевочного раствора, а так же задиры и царапины до 1 мм. Отклонения по вертикали до 1 мм на 1 м (но не более 5 мм на всю высоту помещения), а так же тени от бокового света. Если вы выбираете в качестве финишных покрытий жидкие обои, текстурную краску или декоративную штукатурку, качество поверхности Q2 является самым экономичным и быстрым решением.👌 Сайт|Facebook|Instagram #knaufuzbekistan#q2

KNAUF Uzbekistan

@knaufuzbekistan · Post #249 · 18.05.2021 г., 04:00

​​👷‍♂️Qanday qilib ustalar bilan bir xil tilda gaplashish mumkin? Qanday qilib keraksiz joylarda devorlarni oynadek tekislash boʻyicha ortiqcha ishlar bilan ovora boʻlmaslik va vaqt va pulni tejab qolish mumkin? Ikkala tomon - Buyurtmachi ham, Ijrochi ham, "gulqog'ozning orqasi" yoki "kafelning orqasi" ta'rifini bir xil tushunishiga qanday amin bo'lishimiz mumkin? ☝️Bu yerda yuzalarni qoplash sifatini eng past Q1dan yuqori daraja, premium sinf Q4 ga qadar tasniflaydigan maxsus ishlab chiqilgan KNAUF Q1-Q4 tizimi ("Q" - nemis tilidagi "Qualität"dan olingan, sifat) yordam beradi. U ham quruq qurilish ishlari, ham suvoqga asoslangan tizimlar uchun mos keladi. 🧐Shuni esda tutish kerakki, Q2 sifat darajasi keyingi Q3 va Q4 darajalari uchun asos hisoblanadi. Ya'ni, to'satdan rejalaringiz o'zgarib qolsa va siz xonani pardozlash uchun dekorativ suvoq (Q2) o'rniga, masalan, Venetsiya suvogʻi (Q4) bilan ishlov berishga qaror qilib qolishingiz hozir qanday tayyorgarlik koʻrishingizga bog'liq. Q2 qanday koʻrinishga ega? Ushbu yuza sifati asboblardan qolgan izlar va shpaklyovka eritmasidan yuzaga kelgan notekisliklarni, shuningdek 1 mm gacha oʻyiq va qirilgan joylarni koʻrinishiga imkon beradi. 1 m uchun 1 mm gacha bo'lgan vertikal ogʻishlar (lekin xonaning butun balandligi uchun 5 mm dan koʻp emas), shuningdek soyalar yon nurlardan tushadi. Agar Siz yakunlovchi qoplama sifatida suyuq gulqog'ozi, teksturali bo'yoq yoki dekorativ suvoqni tanlasangiz, Q2 yuza sifati eng tejamli va eng tezkor yechimdir.👌 - - - - - 👷‍♂️Как разговаривать с мастерами на одном языке? Как не заморачиваться лишней работой по зеркальному выравниванию стен там, где это не обязательно, и экономить время и деньги? Как быть уверенным, что определение “под обои” или “под кафель” обе стороны, Заказчик и Исполнитель, понимают одинаково? ☝️Здесь поможет специально разработанная КНАУФ система Q1-Q4 («Q» — от немецкого Qualität, качество), которая классифицирует качество отделки поверхности от низшего Q1 до высшего, премиум класса, Q4. Она подходит как для сухого строительства, так и для систем на базе штукатурок. 🧐Следует помнить, что уровень качества Q2 является базовым для дальнейших уровней Q3 и Q4. То есть, как вы подготовитесь сейчас, будет зависеть, насколько качественно вы сможете обработать поверхность, если вдруг планы поменялись и вы решили вместо декоративной штукатурки (Q2) отделать комнату, например, венецианской штукатуркой (Q4). Как выглядит Q2? Данное качество поверхности допускает видимые отпечатки от инструментов и наплывы шпаклевочного раствора, а так же задиры и царапины до 1 мм. Отклонения по вертикали до 1 мм на 1 м (но не более 5 мм на всю высоту помещения), а так же тени от бокового света. Если вы выбираете в качестве финишных покрытий жидкие обои, текстурную краску или декоративную штукатурку, качество поверхности Q2 является самым экономичным и быстрым решением.👌 Сайт|Facebook|Instagram #knaufuzbekistan#fugen#rotbandfinish#satengips#q2