Python·100 питань

Як правильно працювати з файлами в бінарному режимі?

Відповідь

Робота з файлами в бінарному режимі в мові Python потрібна в тих випадках, коли ви обробляєте не текстові документи, а зображення, аудіозаписи, відео, архіви або скомпільовані бінарні файли. Щоб відкрити такий файл для читання байтів, використовується вбудована функція open зі спеціальним прапорцем rb.

Для створення або перезапису бінарного файлу застосовується прапорець wb, а для додавання нових даних у кінець існуючого файлу використовується режим ab. Головне правило під час роботи в цих режимах полягає в тому, що категорично не можна вказувати аргумент encoding, оскільки він призначений виключно для текстових файлів і викличе помилку.

Під час читання або запису великих бінарних файлів вкрай важливо не завантажувати їхній вміст в оперативну пам'ять цілком, щоб уникнути її переповнення. Для цього файл зчитують порціями фіксованого розміру, які прийнято називати чанками, використовуючи цикл і метод read з указанням ліміту байтів.

Для обчислення контрольних сум, перевірки цілісності або створення криптографічних підписів прочитаних бінарних даних активно застосовується стандартний модуль hashlib. Він дозволяє на льоту оновлювати хеш-функцію в міру надходження нових чанків із файлу.

Застосування правильних режимів відкриття файлів і покрокова обробка даних гарантують стабільну роботу вашої програми навіть під час взаємодії з гігантськими образами дисків або відеофайлами.

Чи корисна ця відповідь?

Інші питання цієї теми

Пов’язані питання з інших тем