Один из самых удобных способов записать данные это использование готовых форматов, такие как 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
Windows 11 二月更新可能导致部分三星笔记本电脑用户无法访问 C 盘
#Bug
微软正在调查一个影响部分三星笔记本电脑的问题。这些用户在安装 2026 年 2 月安全更新后无法访问 C 盘,无法启动应用。微软表示正与三星合作以确定该问题是否与 Windows 更新或受影响设备上安装的三星软件有关。微软称,受影响用户会遭遇 C 盘无法访问,访问被拒绝的错误信息。该问题也阻止用户访问文件,启动 Outlook、Office、浏览器、系统工具和快速助手(Quick Assist)。问题主要发生在巴西、葡萄牙、韩国和印度,影响三星 Galaxy Book 4 等消费类设备。该问题可能与三星共享应用有关,但确切原因尚未确认。
https://www.bleepingcomputer.com/news/microsoft/microsoft-windows-11-users-cant-access-c-drive-on-some-samsung-pcs/
💀«Durov has died», «you will be killed tomorrow», «message not delivered», «access to the server has been completely terminated» — these scary messages were sent from the official Telegram account? These messages have been spreading since the launch of the Guest Mode functionality for bots. The most interesting thing is that the bot guest mode works not only in groups, but also in personal messages. And +42777 (and other support accounts) are also PMs.
🤖 At first, there was a #bug where forwarding messages from a PM sent by a bot with guest mode was attributed to your interlocutor — not a bot. You can imagine that a guy created his own bot where by writing " @yourbot" (without quotes) he sent a certain word specified in the script. 🔹 Now guest mode does not work in support, and the bug has been fixed — the authorship of forwarded messages is assigned correctly.
Source: 💌💌💌
Windows 11 一月更新可能导致部分 PC 无法启动
#Bug
根据微软的支持文档,Windows 11 一月安全更新可能导致部分 PC 无法启动,它正在收集用户和 IT 管理员的反馈。用户无需卸载此更新,因为该问题“仅限于”特定 PC。目前不清楚有多少用户受到影响,微软列出了两个受影响的平台:KB5074109 – Windows 11 25H2 和 KB5074109 – Windows 11 24H2。微软称,受影响的 PC 可能会突然停止启动,出现黑屏死机 (BSOD)错误,错误代码为 UNMOUNTABLE_BOOT_VOLUME。
https://admin.cloud.microsoft/Adminportal/Home?source=applauncher#/windowsreleasehealth/:/issue/WI1221934