Один из самых удобных способов записать данные это использование готовых форматов, такие как JSON или YAML.
Из плюсов такого подхода стоит отметить вот что:
🔸 готовый, повсеместно используемый и поддерживаемый формат
🔸 простой и понятный файл, удобочитаемый для человека
🔸 можно легко редактировать в любом текстовом редакторе без специальных программ и библиотек
Но есть и минусы
🔹 затраты времени при записи файла (кодирование данных в нужный формат строки)
🔹 затраты времени при чтении файла (декодирование данных в Python объекты)
🔹 размер файла увеличивается из-за разметки данных (скобки, запятые, переносы, отступы...)
🔹 перед записью все данные должны быть помещены в память в полном объёме (не всегда)
🔹 при чтении необходимо считать весь файл в память и только потом декодировать данные
Если нужно писать немного данных в несколько файлов, то затраты по времени не ощутимы. Обычно это файлы конфига или какие-либо метаданные. Это отличный вариант под такие задачи.
Есть и другой поход к записи файлов - это бинарные файлы. Используется, когда данных достаточно много и никто их не собирается читать глазками😳.
🔸 очень быстрая запись
🔸 чтение значительно быстрей чем JSON, YAML итд
🔸 размер файла значительно меньше, так как нет разметки
🔸 можно записывать данные по мере поступления не загружая всё в память
🔸 можно извлечь любую часть данных независимо
Из минусов
🔹 нужно определить свой формат записи данных (если не используете готовую спецификацию определённого формата)
🔹 не получится открыть файл и визуально понять что там записано, а для чтения файла потребуется знать его спецификацию.
🔹 не так-то просто создать такой файл без специальной библиотеки
В таком виде удобно записывать большой массив любых однородных данных. Например, мониторинг валютной биржи или кэшированная анимация 3D геометрии.
(Это не означает что нельзя записать данные разного типа, просто это будет не так удобно)
Представьте себе JPG-картинку. По сути это немного мета-информации и большой массив пикселей. Тоже самое со звуком или видео файлом. Поэтому, если вы попробуете открыть картинку в текстовом редакторе вы увидите что-то вроде такого
f15d cd29 a564 4578 ...
09e2 9bc4 a696 1253 ...
84e9 4de1 3b23 c24a ...
2534 5161 28e0 709d ...
...
Это и есть записанные байтики. И для их чтения требуется определённый софт который знает что с ними делать. Под каждый тип файла.
К чему это я? Читайте в следующем посте...
#tricks#basic
Papa #LeoneXIV riceverà in udienza, giovedì 9 aprile, alle ore 11.30, nella Sala Clementina del Palazzo Apostolico, in Vaticano, alcuni sportivi italiani, rappresentanti di tutti coloro che hanno partecipato alle #Olimpiadi e alle #Paralimpiadi invernali di #MilanoCortina, per mettere in risalto i successi degli atleti, la cui passione e le cui capacità hanno arricchito così tanto le nostre vite.
Proprio nel giorno di apertura dei Giochi, il 6 febbraio scorso, il Santo Padre ha firmato la Lettera “La vita in abbondanza” sul valore dello sport. A coordinare l’iniziativa dell’Udienza è il Dicastero per la Cultura e l’Educazione, con il coinvolgimento di Athletica Vaticana, in collaborazione con il Comitato Nazionale Olimpico Italiano (Coni) e il Comitato Italiano Paralimpico (Cip) Significativamente, durante l’Udienza sarà presente in sala la “Croce degli Sportivi” che, per tutta la durata dei Giochi, è stata collocata nella basilica di San Babila a Milano.
Alcuni atleti si recheranno poi al Dispensario Pediatrico “Santa Marta”, sempre in Vaticano, per incontrare alcune famiglie in situazioni di povertà e fragilità.
Nel giorno in cui #Milano accoglie la Croce Olimpica degli Sportivi in vista dei Giochi di #MilanoCortina, Papa #LeoneXIV auspica che "queste giornate di sana competizione contribuiscano a costruire ponti tra culture e popoli, promuovendo l’accoglienza, la solidarietà e la pace”.
Le parole del Pontefice arrivano nel capoluogo lombardo tramite un telegramma, a firma del Cardinale Segretario di Stato, Pietro Parolin, inviato a mons. Mario Delpini, Arcivescovo di Milano, che questa sera presiede Messa a San Babila, chiesa dove sarà custodita la Croce Olimpica per tutta la durata dei Giochi Olimpici e Paralimpici.
Il Santo Padre, salutando "quanti prendono parte alla celebrazione” “auspica" altresì che le #Olimpiadi suscitino "sentimenti di amicizia e di fraternità, rinsaldando la consapevolezza del valore dello sport al servizio dello sviluppo integrale della persona umana”.
“Siano giorni di festa! Sia festa per l’incontro di pace tra i popoli, sia festa per la bellezza delle gare e dei risultati, sia festa perché le Olimpiadi e le #Paralimpiadi non escludono nessuno”, le parole di mons. Delpini durante l'omelia.
“Siano giorni di profezia - prosegue l'Arcivescovo -, profezia della vocazione alla fraternità universale, profezia per la testimonianza di onestà in ogni cosa, profezia perché le Olimpiadi e le Paralimpiadi piantano nella vicenda umana eccellenza, amicizia, rispetto”.
Il presule chiede inoltre che siano “giorni di condivisione, perché la festa non dimentica le tragedie, perché le risorse non siano per i ricchi, ma per tutti, perché le Olimpiadi e le Paralimpiadi alimentano la cultura della pace”.
Dall'Arcivescovo anche il richiamo all'ascolto del corpo: "Il tuo corpo parla a chi ti incontra. Non ridurre il corpo a una macchina da sfruttare, non ridurre il corpo a un meccanismo complicato che ogni tanto deve essere aggiustato, non ridurre il corpo tuo e altrui a un oggetto da desiderare, non ridurre il corpo a una prigione di cui liberarsi, a un’apparenza di cui vergognarsi”.
“In queste settimane i Giochi saranno una specie di festival del corpo”, prosegue il presule, sottolineando che gli atleti “potranno istruire la città e tutti coloro che sanno ascoltare”. Lo #sport, per mons. Delpini, è “una scuola di ascesi, di morale, di umanità, di vita, di audacia e di fantasia”. Riferendosi alla croce degli sportivi, l’arcivescovo spiega: “Il corpo di Cristo, crocifisso per amore, è l’apertura per andare oltre e accogliere il mistero. Se volete sapere che cos’è l’amore, guardate a Gesù, adorate il corpo crocifisso e risorto”.
📸 Arcidiocesi di Milano