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

Резултати

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

Пребарај: #judicialreasoning

当前筛选 #judicialreasoning清除筛选
English Law Report

@enlawreport · Post #1835 · 20.12.2025 г., 07:36

За декабрь 2025 года я внимательно разобрал 17 решений Commercial Court в High Court of England and Wales. Один месяц, разные судьи, разные типы споров — от summary judgment и jurisdiction до contempt, arbitration challenges и тяжёлых коммерческих процессов. И при всём этом разнообразии обнаружилась одна неприятно точная закономерность: суд сегодня почти не интересуется тем, насколько красив или интеллектуально изящен ваш аргумент. Его интересует другое — когда, как и после чего вы его принесли. Commercial Court больше не ведёт спор по существу, если процессуально вы уже опоздали. Ключевой вопрос суда звучит не «кто прав?» и даже не «что справедливо?», а предельно прагматично: допустимо ли то, что вы делаете, на этой стадии процесса, в этом формате и с учётом всего, что уже произошло. Если ответ отрицательный, дальнейший анализ просто не начинается. Не потому что аргумент слаб, а потому что он юридически не существует. Самый важный сдвиг последних лет — стадия процесса стала важнее содержания аргумента. Можно быть правым по существу и проиграть без шансов только потому, что вы сказали это слишком поздно или не тем способом. Суд всё чаще пишет: даже если вы правы, сейчас это недопустимо. И на этом ставит точку, без эмоций и без сожалений. Процессуальный выбор стал дорогим. Если вы не заявили факт вовремя, не пошли с amendment, сознательно выбрали тактику «посмотрим, как пойдёт», суд не будет вас спасать. Он исходит из того, что вы приняли риск. А риск — это не абстрактное понятие, а ваша личная ответственность как стороны профессионального спора. Очевидность без зафиксированного finding’а для суда равна нулю. Новый эксперт, новый отчёт, новая формулировка не оживляют вопрос, который уже был решён или который вы сами решили не поднимать вовремя. Многие по привычке хватаются за прецеденты, как за спасательный круг. Но практика декабря 2025 года показывает: authority больше не компенсирует плохой тайминг. Даже Supreme Court не поможет, если вы нарушили процессуальную дисциплину. В иерархии суда сегодня выше стоят CPR, процессуальная история дела и ранее вынесенные orders, а не красота правовой конструкции. Что же суд реально защищает? Не стороны и не их эмоции. Он защищает финальность решений, предсказуемость процесса, авторитет собственных приказов и дисциплину игры. Commercial Court всё меньше выглядит как арбитр конфликта и всё больше — как архитектор системы. Он не исправляет стратегии, не даёт вторых попыток и не переписывает процессуальную историю задним числом. Практический вывод предельно прост и довольно неприятен. Сегодня выигрывает не тот, у кого самый умный аргумент, а тот, кто думает стадиями, фиксирует факты сразу, не оставляет важное «на потом» и понимает, что хороший аргумент, сказанный слишком поздно, для суда не существует. Это не жёсткость и не цинизм. Это современное понимание судебной функции. Если вы хотите научиться читать судебные решения не как хронику событий, а как инструкцию по выживанию в Commercial Court, напишите мне в личные сообщения. Я покажу, как под это мышление реально выстраивать стратегию дела, а не просто реагировать на решения постфактум. #CommercialCourt#EnglishLaw#LitigationStrategy#JudicialReasoning#LegalPractice#Arbitration#UKLaw#LegalStrategy