Один из самых удобных способов записать данные это использование готовых форматов, такие как 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
#Deploy
Deploy file share bot using telegram Bot
Just login with with your heroku account via the bot and you can deploy file sharing bot
https://telegram.dog/XTZ_HerokuBot?start=Q29kZVhCb3R6L0ZpbGUtU2hhcmluZy1Cb3QgbWFpbg
Thanks to @subin_works
https://www.ibm.com/developerworks/topics/python%20django
Develop, #deploy, and manage your apps in the cloud
The #Bluemix cloud platform has everything you need to get started.
#Django
Dasturni front qismini server qo'yishda dasturchilar orasida bepul bo'lgani uchun Netlify va Vercel serverlaridan foydalanish keng tarqalgan.
Bulardan foydalanganda nested pagelarda yuqoridagi rasmda ko'rsatilgandek error kelib chiqadi.
Buni oldini olish uchun proyektingizga quyidagi kodlarni qo'shishingiz kerak bo'ladi.
Agar proyekt Netlifyda bo'lsa netlify.toml file yaratib ichiga
[[redirects]]
from = "/*"
to="/index.html"
status = 200
larni qo'shish kerak.
Agar Vercelga qo'yilgan bo'lsa unda vercel.json file yaratib ichiga
{
"routes": [{ "src": "/[^.]+", "dest": "/", "status": 200 }]
}
larni qo'shish kerak. Shunda nested pagelarda error bermaydi.
#frontend#deploy#avoid_error
☑️@valisherbotirov
Russia Is Up To Deploy Navy To Protect Vessels from the West
A senior Russian official has said Moscow could deploy its navy to protect Russian-linked vessels from potential European seizures, raising the prospect of retaliatory action against European shipping as pressure on the Kremlin’s so-called shadow fleet intensifies.
Nikolai Patrushev, a former FSB director who heads Russia’s maritime board, said on Tuesday that the country’s navy should be ready to counter what he described as “western piracy”.
Patrushev added that any attempt to impose a maritime blockade on Russia would be illegal under international law, claiming that the EU’s use of the term “shadow fleet” had no legal basis.
His comments came as senior Ukrainian and Russian officials are met in Geneva on Tuesday for the latest round of high-stakes talks brokered by the Trump administration, as the fourth anniversary of Moscow’s full-scale invasion of Ukraine draws near.
Ahead of the talks, Russia carried out heavy airstrikes overnight across swathes of Ukraine, inflicting severe damage to the power network in the southern port city of Odesa, which Zelensky said left tens of thousands without heat and water.
The term shadow fleet refers to an estimated 1,500 ageing or lightly regulated oil tankers operating under opaque ownership structures to help Russia export crude to buyers such as China and India while circumventing western sanctions.
More than 600 vessels have been targeted by sanctions from the EU, UK and US. These measures have helped curb Russian oil revenues.
Despite growing political pressure, European governments have struggled to develop a coherent legal mechanism for physically stopping or confiscating the ships, relying instead on sanctions, insurance restrictions and inspections.
Western allies have warned that vessels lacking proper documentation may be treated as stateless ships, potentially widening the scope for intervention at sea.
The British defence secretary, John Healey, met European counterparts on the sidelines of the Munich Security Conference at the weekend to discuss possible moves to seize tankers linked to Russia’s shadow fleet.
Earlier this year, the French navy briefly intercepted a tanker suspected of operating within the shadow fleet before allowing it to continue its journey.
The US has, in recent months, moved to physically interdict and seize several tankers linked to shadow fleets carrying sanctioned oil from Russia, Venezuela and Iran.
Patrushev’s comments, however, appeared to focus primarily on Europe, suggesting the Kremlin is wary of escalating tensions with Washington while delicate negotiations over Ukraine continue.
#russia#deploy#navy#protect#vessels#patrushev
📱American Оbserver - Stay up to date on all important events
🇺🇸