Update code structure and improve readability
This commit is contained in:
@@ -0,0 +1,32 @@
|
|||||||
|
from io import BytesIO
|
||||||
|
from typing import Optional
|
||||||
|
|
||||||
|
|
||||||
|
class ExcelHandler:
|
||||||
|
"""
|
||||||
|
Класс для обработки Excel файлов.
|
||||||
|
Хранит файл в формате BytesIO и предоставляет методы для работы с ним.
|
||||||
|
"""
|
||||||
|
|
||||||
|
def __init__(self, file_bytes: BytesIO):
|
||||||
|
"""
|
||||||
|
Инициализация обработчика Excel файла.
|
||||||
|
|
||||||
|
Args:
|
||||||
|
file_bytes: Файл электронных таблиц в формате BytesIO
|
||||||
|
"""
|
||||||
|
if not isinstance(file_bytes, BytesIO):
|
||||||
|
raise TypeError("file_bytes должен быть экземпляром BytesIO")
|
||||||
|
|
||||||
|
self.data: BytesIO = file_bytes
|
||||||
|
|
||||||
|
def get_file(self) -> BytesIO:
|
||||||
|
"""
|
||||||
|
Возвращает сохраненный файл в формате BytesIO.
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
BytesIO: Файл электронных таблиц
|
||||||
|
"""
|
||||||
|
# Перемещаем указатель в начало файла для корректного чтения
|
||||||
|
self.data.seek(0)
|
||||||
|
return self.data
|
||||||
Reference in New Issue
Block a user