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.1.tar.gz (29.0 kB view details)

Uploaded Source

Built Distributions

core_xlsx-0.12.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

core_xlsx-0.12.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (969.8 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

core_xlsx-0.12.1-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.1-cp312-cp312-macosx_11_0_arm64.whl (920.5 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

core_xlsx-0.12.1-cp312-cp312-macosx_10_12_x86_64.whl (998.0 kB view details)

Uploaded CPython 3.12 macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: core_xlsx-0.12.1.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.1.tar.gz
Algorithm Hash digest
SHA256 b17cf15bada182df575c4833fa40418979dd7c52e23db661829996712905625a
MD5 f14c2a6dff72b4c5437aed2fa89a3714
BLAKE2b-256 7667d31b2583614c98f253ffcae8e4857b31168915e015b1ee91e96320831426

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for core_xlsx-0.12.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4b5bbd94f89ba9a802ebcb08106d4c245854689b66391cf0b37264e9c560e731
MD5 d5e9bd0a44a7e69e3f9ec8bc45a72284
BLAKE2b-256 d986dd4ad62308fea331e9f186d599c24d11a071230469b8058ec56098c7d6fe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for core_xlsx-0.12.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 957c50c0d353153b63d11764780ecff2a6f9b0d38dd93b206bef12d735b6aad2
MD5 78c6af21f05db40d0d62adf5f127fc0b
BLAKE2b-256 f2d5cf8f83202eda6e286517ecf2575276c5ff819445676199c8835d3f945321

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for core_xlsx-0.12.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 45700b3e4ab08628355deceba76c9c48b3200e145dcb0b1d0e34a45e0726ae9e
MD5 9d5e1e7992e667f386ea542887882ba6
BLAKE2b-256 2babb5fd3e940e801608b7979e0722ba4bc184782963a9122be996348dc34f01

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for core_xlsx-0.12.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2296db9ce27e45f8380992034150b6d61e2d87cbe39b3e1122d748af7f7de474
MD5 9c9f048bdaa99e71772aa49f35015687
BLAKE2b-256 7a68ee372b1b3260ba12185e572ce440fdcab6a47f9fb1ca625cfc3f00b7d479

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for core_xlsx-0.12.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1fd648b245dea0a8fe1c6bb96971c859467c523f0d276cdc63fbebcae818b78f
MD5 4d5322132330861f3af1672e5faaa341
BLAKE2b-256 9ecf12d15138a6df62cfdb7322ef21bbb6fb333adc6035eaf54f23e4dc991e7b

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