chunk_fileobj¶
- chunk_fileobj(fileobj)¶
- Параметры:
fileobj (BufferedReader) – Файловый объект для чтения
- Результат:
Генератор байтовых чанков
- Тип результата:
Generator[bytes, None, None]
Потоковое чтение файла с разбиением на чанки фиксированного размера.
Описание:
Читает файл порциями по CHUNK_SIZE (1 МБ) и возвращает генератор,
который последовательно отдает эти чанки. После полного чтения файла
автоматически закрывает файловый объект.
Особенности:
Потоковая обработка: Не загружает весь файл в память
Автозакрытие: Гарантированное закрытие файла после чтения
Оптимальный размер: Использует стандартный
CHUNK_SIZEУниверсальность: Работает с любым файловым объектом, поддерживающим
read()
Пример использования:
with open("large_file.bin", "rb") as f:
for chunk in chunk_fileobj(f):
# Обработка каждого чанка
process_chunk(chunk)
# Файл автоматически закрыт
Использование:
Для эффективной обработки больших файлов при:
Передаче данных по сети
Сжатии/распаковке
Конвертации между форматами
Поточной загрузке в базы данных