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

Резултати

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

Пребарај: #demografía

当前筛选 #demografía清除筛选
Communia

@communia · Post #37466 · 01.11.2023 г., 09:31

#España . El progresivo envejecimiento de la población trabajadora se va notando en el mercado laboral. El porcentaje de trabajadores menores de 30 años pasa del 22% en 2008 al 14% en 2022. #Demografía#Juventud https://elpais.com/economia/2023-10-31/el-numero-de-trabajadores-mayores-de-55-anos-se-dispara-un-78-en-los-ultimos-14-anos.html

Communia

@communia · Post #36986 · 02.09.2023 г., 12:02

#Vietnam#Cultura El #sexismo de la cultura feudal conservada por el stalinismo, en un contexto de #pobreza y subsistencia aunque con mayor esperanza de vida y precarización de las condiciones de la vejez, produce un desequilibrio en la #demografía entre varones y mujeres. Resultado: más violencia contra las mujeres de clase trabajadora y campesina. «En primer lugar, el desequilibrio es resultado de la preferencia de la sociedad por los chicos. El confucianismo, dominante en Vietnam, defiende roles de género estrictamente separados y la subordinación de la mujer al hombre. Así, al casarse, las mujeres pasan a formar parte de la familia del hombre y, por tanto, se dan por "perdidas" para su propia familia. Además, los padres dependen de sus hijos -o, más bien, de sus hijos varones- para mantenerse en la tercera edad, ya que el sistema de pensiones es incierto.» «Las mujeres son cada vez más víctimas de "matrimonios forzados, tráfico de seres humanos y otras formas de violencia", según el estudio "Distribución de género en Vietnam", de Tran Thi Bich Ngoc y otros autores. Además, aumentan la prostitución y otras formas de explotación sexual. Según la ONU, el excedente relativo de hombres jóvenes en la columna de edad de 20 a 39 años crecerá del 3,5 actual al 10 por ciento en 2059, lo que significa que, estadísticamente, uno de cada diez hombres con edad suficiente para buscar pareja no podrá hallar una mujer» https://www.dw.com/es/vietnam-un-pa%C3%ADs-sin-mujeres/a-66687660