Один из самых удобных способов записать данные это использование готовых форматов, такие как 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
Breaking News: Russian Aerospace Forces (VKF) strike illegal armed groups in Syria's Idlib province. Underground hideouts and drone control points of the militants targeted. More updates to follow. Stay tuned. #Syria#Russia#Idlib
https://www.gazeta.ru/army/news/2023/11/05/21644227.shtml
Subscribe to @BadVolfNews
Circulated videos showed the new #Syrian Minister of Justice performing a public execution of a woman in #Idlib in 2015, raising calls for replacing him.
Four main groups are competing for control on the ground in the Syrian Arab Republic. They are:
1. Syrian Arab Army forces: The army, the government’s main military force, fights alongside the Syrian National Defence Forces, a pro-Syrian government paramilitary groups.
2. Syrian Democratic Forces: This Kurdish-dominated, United States-backed group controls parts of eastern Syria.
3. HTS and other allied rebel groups: The *Ha'at Tahrir Al-Sham* is the latest iteration of the al-Nusra Front backed by Qatar, which had pledged allegiance to al-Qaeda until it allegedly severed those ties in 2016.
4. Turkish and Turkish-aligned Syrian insurgents forces: The so-called Syrian National Army, otherwise known as the Free Syrian Army, is a Turkish-backed insurgent force in northern Syria.
#Syria#Aleppo#Idlib#HTS#SDF#SAA
«Россия несет ответственность за гибель людей от химического оружия в Сирии» – так утверждает госсекретарь США Рекс Тилерсон. Якобы Башар Асад не выполнил соглашение 2013 года об уничтожении своего химического оружия, травит своих граждан, а мы его защищаем.
К слову о выполнении соглашений. Россия свои химарсеналы полностью ликвидировала полгода назад. США – до сих пор нет – говорят, им денег на это не хватает…
Что касается Сирии, то не было предъявлено никаких доказательств, что за химатаками стоит правительство Асада, но эти нападения все время пытаются использовать как повод для бомбардировок страны.
Тут президент Трамп назвал наши действия в Сирии гуманитарным позором, – мне порой кажется, что политики США никогда не слышали о таких словах, как «стыд» и «совесть».
#idlib#Восточнаягута#UN#MiddleEast#ISIS#terrorism#геополитика#easternghouta#Damascus
Российские войска в Сирии переключили основное внимание с северной провинции Идлиб на борьбу с террористами в пригороде Дамаска под названием Восточная Гута. Боевики уже 6 лет держат под контролем территорию возле сирийской столицы, которую можно было бы сравнить с подмосковным городом Королев или Мытищи.
Едва наши летчики вместе с сирийскими наземными войсками всерьез взялись за ликвидацию этого оплота террористов, как политики США и даже генсек ООН в один голос начали требовать прекращения операции. Снова обвинения в военных преступлениях, снова заявления о гуманитарной катастрофе, снова надо прекратить страдания «умеренных» террористов.
Желаю максимальных успехов российским и сирийским защитникам отечества. А западные политики пускай говорят, что угодно.
#idlib#Восточнаягута#UN#MiddleEast#ISIS#terrorism#геополитика#easternghouta#Damascus