Core functionality for XLSX
Project description
core_xlsx.
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
Built Distributions
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | fa7d9971462cf9d40f2438fd4099c9081b4436af84693d43086942d86c464e6a |
|
MD5 | 8680aadfad76a80bca68efd8b72acc66 |
|
BLAKE2b-256 | e0aa975eca23e30ffc094a9984de30a15f0bbad545e103c6501ae03e13dbbb16 |
File details
Details for the file core_xlsx-0.12.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: core_xlsx-0.12.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.0 MB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 56c67dc140224ae71d8ce39a134bd479ade86ebc230f5eca945e0a5096437ba9 |
|
MD5 | 5511236d762fc3bd6e5650e8fb21d490 |
|
BLAKE2b-256 | 7dd7addb179481fac40d684f117197d10fcf1683afbfa419570a08f02bdb3c35 |
File details
Details for the file core_xlsx-0.12.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
.
File metadata
- Download URL: core_xlsx-0.12.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 967.6 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 294e03f05c065d9348e1cd34e0f76baf74fb902f408da9cdac495dacff8a5db7 |
|
MD5 | 7a946fc7a158a54725a1481140434a03 |
|
BLAKE2b-256 | 6f6b2228c174c48ea62a6805f9634502782fa1cbcc7eccac19a50b089438e59e |
File details
Details for the file core_xlsx-0.12.2-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl
.
File metadata
- Download URL: core_xlsx-0.12.2-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl
- Upload date:
- Size: 1.0 MB
- Tags: CPython 3.12, manylinux: glibc 2.12+ i686
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e2bbe9acc35b2fb6ae28a6d39de4f0c91b6e8d73bfa0bf39efa2e52ab22cc678 |
|
MD5 | a6cc35d57eba9807c21fc5f807b1d23f |
|
BLAKE2b-256 | 90e0b6f39a064c2843a9e55fb4fa3568f87b809b6ef6d7a81d3f5833599daf90 |
File details
Details for the file core_xlsx-0.12.2-cp312-cp312-macosx_11_0_arm64.whl
.
File metadata
- Download URL: core_xlsx-0.12.2-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 918.2 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08ccc42af0fdd22dcbcd5a9dd3e81f45d4e6d55ae07aebd127b1f4950cb8c365 |
|
MD5 | ed22c9f2afb87d3d306abf154999e4f1 |
|
BLAKE2b-256 | 5e679264f9e812e1761ee36e85a06f7398c581b92275cc607d2c755b93427603 |
File details
Details for the file core_xlsx-0.12.2-cp312-cp312-macosx_10_12_x86_64.whl
.
File metadata
- Download URL: core_xlsx-0.12.2-cp312-cp312-macosx_10_12_x86_64.whl
- Upload date:
- Size: 992.6 kB
- Tags: CPython 3.12, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 66125813e8f0d5e8e99ca6127df89b64f1768c9c7172001e4983388800cf991e |
|
MD5 | 05aa99dd3d67940d4fc94d84b7530ee9 |
|
BLAKE2b-256 | ce71e39fb50afa5a361bdd1bf45fd28877207888bb907e483c96d912884897e6 |