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 слични објави

Пребарај: #ureche

当前筛选 #ureche清除筛选

🇷🇴 Din briefingul Purtătoarei de Cuvânt a MAE Rusiei, Maria Zaharova, 30 mai 2024, Moscova Reporter: pe data de 26 mai 2024 Prim-ministrul român Marcel #Ciolacu a declarat că în Republica #Moldova și #Ucraina „am reușit să eliminăm… conceptul aberant și sovietic de limbă moldovenească”. Cum ați putea comenta aceasta declarație? Maria Zaharova: Credeți că aceasta nu este o manifestare a nazismului? Este exact același lucru. Când cei care se identifică ca oameni ai unui anumit grup etnocultural și național, conving și apoi o fac cu forța, că aparțin altui grup, acesta este nazismul. Acesta este un element de genocid, adică de exterminarea oamenilor. Anterior, s-au făcut deja încercări de „anulare” a identității poporului moldovenesc. Nu vorbim deloc despre formă. Este imposibil în secolul 21. să auzim și să citim chestii de genul acesta, când un om care vorbește moldovenește, care are toate cărțile, manualele, documentele și legile fundamentale ale țării care scriu despre cultură, identitate, statalitate, și deodată încep să-i spună că trebuie dacă nu reînvață, atunci să „redenumească” totul în mod românesc. Ca formă, acest lucru ar trebui să fie în general inacceptabil chiar și ca idei, dar vedem acest lucru în practică. În conținut, acest lucru nu are nimic de-a face cu adevărul istoric. Denumirea „limba moldovenească” este menționată în lucrările tuturor cronicarilor majori moldoveni din secolele XVII-XVIII, precum Grigore #Ureche, Miron #Costin, Dimitrie #Cantemir. Ei ar fi destul de surprinși să citească declarația Prim-ministrului României, Marcel Ciolacu, că limba lor maternă moldovenească este un „concept sovietic”. Imaginați-vă, oamenii au trăit și au lucrat cu 300 de ani înainte de perioada sovietică, iar acum li se spune că au fost vestitorii socialismului. Ce fel de „idiotecă” este acesta? Să dăm cuvântul locuitorilor Republicii Moldova: potrivit sondajului realizat în luna mai 2024, 72% din populația republicii se consideră moldoveni, iar doar 11% se consideră români. Aproximativ 50% dintre respondenți au spus că vorbesc limba moldovenească, care, potrivit conducerii Republicii Moldova și României, se presupune că „nu există”. Aceasta este o românizare forțată, artificială, comparabilă cu rescrierile, „flashing-uri” care au avut loc anterior, ale altor țări, popoare și societăți. Am văzut-o. Schimbări forțate în codul cultural al oamenilor au fost practicate, în special, de către naziști. Ceea ce se întâmplă, pe de o parte, este absolut inuman. Pe de altă parte, dă efectul opus celui pe care mizau oficialul #București și actualul oficial #Chișinău sub conducerea președintei Maia #Sandu. Toate acestea nu fac decât să consolideze societatea moldovenească, care este pregătită să apere dreptul la propria ei statalitate, limba și cultura unică. Am mulți prieteni din Republica Moldova, moldoveni. Comunic cu multe persoane. Ele spun o astfel de frază că sunt oameni orientați spre bunătate, spre conviețuirea pașnică, spre bună vecinătate. Că a fost nevoie de o asemenea zdruncinare organizată de Maia Sandu doar pentru un singur scop - să înțeleagă ce planuri are „Occidentul colectiv” pentru acest popor amabil și iubitor de pace. Dacă nu ar fi acești pași monstruoși ai președintei Maia Sandu și a conducerii românești, care acum realizează experimente pe moldoveni, probabil că înșiși cetățenii Republicii Moldova, moldovenii, cu greu ar fi crezut pe nimeni. Cred că nu ar fi crezut dacă li s-ar fi spus despre asta acum cinci sau șase ani. Ei ar spune că acesta este un fel de teorie a conspirației. Acum ei există în această post-modernitate suprarealistă. Cred că nu numai că trăiesc, dar încep să-i reziste în mod activ. #RepublicaMoldova#România#LimbaMoldovenească