# -*- coding: utf-8 -*- """Выбор читателя по расширению файла.""" from __future__ import annotations from pathlib import Path from .base import SourceReader from .ods_reader import OdsReader from .xls_reader import XlsReader from .xlsx_reader import XlsxReader _READERS = { ".ods": OdsReader, ".xls": XlsReader, ".xlsx": XlsxReader, } def get_reader(path: Path) -> SourceReader: ext = Path(path).suffix.lower() try: return _READERS[ext](path) except KeyError: raise ValueError("Неподдерживаемый формат: %s" % ext)