Skip to main content

Core functionality for XLSX

Project description

core_xlsx.

CI


core_xlsx - это вспомогательная Python-библиотека для работы с данными в виде Excel (XLSX) для проекта, предоставляющая удобные инструменты для манипуляции данными в таблицах.

Установка

poetry add core-xlsx

Основные компоненты

  • XLSXBook: Представляет книгу отчета Excel.
  • XLSXSheet: Представляет лист Excel для создания новых листов отчета.
  • XLSXSheetCell: Представляет ячейку в листе Excel для создания новых ячеек отчета.
  • XLSXSheetRead: Представляет лист Excel для чтения существующих листов отчета.
  • XLSXSheetCellRead: Представляет ячейку в листе Excel для чтения существующих ячеек отчета.
  • Service: Базовый класс для создания сервисов обработки данных и создания отчетов.
  • HelperSheet: Помощник для работы с несколькими листами и ячейками.
  • HelperCell: Помощник для работы с ячейками.
  • column_number_to_letter: Функция для преобразования колонки с row в букву (1 -> A).
  • get_letter_coordinate: Функция для получения координаты ячейки в стиле A1.

Возможности

  • Поиск листов по имени или шаблону
  • Поиск ячеек по значению, регулярному выражению или адресу
  • Манипуляция данными ячеек (установка значений, формул, форматов)
  • Получение информации о ячейках (тип данных, числовой формат, стиль)
  • Работа с датами и временем
  • Создание пользовательских сервисов и форматтеров для создания отчетов xlsx.

Пример использования

from core_xlsx import  Service, HelperSheet, XLSXBook

class MyService(Service):
    def summary_0(self, sheets, /, **kwargs) -> XLSXBook:
        """Данный метод предназначен для формирования отчета"""

        book = XLSXBook()
        new_sheet = book.add_sheet("Отчет")

        h = HelperSheet(sheets)
        sheet = h.find_sheet_by_pattern("Страница с данными")

        if sheet:
            cell = sheet.find_cell_pattern_regex("Итого:")
            if cell:
                total = float(cell.value)
                print(f"Итоговая сумма: {total}")

        # Вызовем метод форматирования
        book = self.fmt_0(book, year=2024)

        return book


    def fmt_0(self, sheets, /, **kwargs):
        """Данный метод предназначен для форматирования отчета"""
        return sheets

# Использование
service = MyService(uow="my_unit_of_work")
sheets = [...]  # Ваши данные листов

processed_sheets = service.summary_0(sheets)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

core_xlsx-0.12.2.tar.gz (29.0 kB view details)

Uploaded Source

Built Distributions

core_xlsx-0.12.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

core_xlsx-0.12.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (967.6 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

core_xlsx-0.12.2-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl (1.0 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.12+ i686

core_xlsx-0.12.2-cp312-cp312-macosx_11_0_arm64.whl (918.2 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

core_xlsx-0.12.2-cp312-cp312-macosx_10_12_x86_64.whl (992.6 kB view details)

Uploaded CPython 3.12 macOS 10.12+ x86-64

File details

Details for the file core_xlsx-0.12.2.tar.gz.

File metadata

  • Download URL: core_xlsx-0.12.2.tar.gz
  • Upload date:
  • Size: 29.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.7.4

File hashes

Hashes for core_xlsx-0.12.2.tar.gz
Algorithm Hash digest
SHA256 fa7d9971462cf9d40f2438fd4099c9081b4436af84693d43086942d86c464e6a
MD5 8680aadfad76a80bca68efd8b72acc66
BLAKE2b-256 e0aa975eca23e30ffc094a9984de30a15f0bbad545e103c6501ae03e13dbbb16

See more details on using hashes here.

File details

Details for the file core_xlsx-0.12.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for core_xlsx-0.12.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 56c67dc140224ae71d8ce39a134bd479ade86ebc230f5eca945e0a5096437ba9
MD5 5511236d762fc3bd6e5650e8fb21d490
BLAKE2b-256 7dd7addb179481fac40d684f117197d10fcf1683afbfa419570a08f02bdb3c35

See more details on using hashes here.

File details

Details for the file core_xlsx-0.12.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for core_xlsx-0.12.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 294e03f05c065d9348e1cd34e0f76baf74fb902f408da9cdac495dacff8a5db7
MD5 7a946fc7a158a54725a1481140434a03
BLAKE2b-256 6f6b2228c174c48ea62a6805f9634502782fa1cbcc7eccac19a50b089438e59e

See more details on using hashes here.

File details

Details for the file core_xlsx-0.12.2-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for core_xlsx-0.12.2-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 e2bbe9acc35b2fb6ae28a6d39de4f0c91b6e8d73bfa0bf39efa2e52ab22cc678
MD5 a6cc35d57eba9807c21fc5f807b1d23f
BLAKE2b-256 90e0b6f39a064c2843a9e55fb4fa3568f87b809b6ef6d7a81d3f5833599daf90

See more details on using hashes here.

File details

Details for the file core_xlsx-0.12.2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for core_xlsx-0.12.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 08ccc42af0fdd22dcbcd5a9dd3e81f45d4e6d55ae07aebd127b1f4950cb8c365
MD5 ed22c9f2afb87d3d306abf154999e4f1
BLAKE2b-256 5e679264f9e812e1761ee36e85a06f7398c581b92275cc607d2c755b93427603

See more details on using hashes here.

File details

Details for the file core_xlsx-0.12.2-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for core_xlsx-0.12.2-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 66125813e8f0d5e8e99ca6127df89b64f1768c9c7172001e4983388800cf991e
MD5 05aa99dd3d67940d4fc94d84b7530ee9
BLAKE2b-256 ce71e39fb50afa5a361bdd1bf45fd28877207888bb907e483c96d912884897e6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page