Найти в Дзене
SoftSAR

Работа с файлами xlsx при помощи библиотеки Openpyxl

Оглавление

В данной статье мы рассмотрим работу с файлами Excel средствами Python. Мы рассмотрим, как читать и записывать данные в таблицы Excel, строить графики и диаграммы посредством Python и библиотеки Openpyxl.

Excel одна из самых популярных программ для работы с электронными таблицами, а также функциональный инструмент визуализации и анализа данных.

Python предоставляет удобную библиотеку Openpyxl для чтения и записи Excel файлов, а также для формирования графиков и диаграмм. Openpyxl отлично подходит для автоматизации рутинных действий с электронными таблицами, удобен для работы как с существующими файлами excel, так и для создания и записи новых файлов.

Используемые инструменты: Python, Openpyxl.

Устанавливаем необходимые библиотеки через командную строку:

pip установить openpyxl

Чтение данных из файла Excel

Используя метод open() открываем файл на чтение, передавая параметру filename путь к файлу, параметр data_only является необязательным параметром и указывает на режим чтения файла. При data_only = True читается непосредственно значение записанное в ячейку, а при data_only = False читается формула записанная в ячейку, если формулы нет читается значение ячейки.

Вызывая свойство sheetnames мы получаем список всех листов книги. Методом excel_doc[sheetnames[0]] указываем с какого листа будет считываться информация. Методы sheet[f'A{i}'].value и sheet.cell(row = i, column = 1).value дают доступ к значению ячейки.

-2

Результат работы:

ФИО | Должность | Подразделение
ФИО | Должность | Подразделение

Доработаем наш скрипт на чтение всей таблицы.

Результат работы:

ФИО | Должность | Подразделение
Иванов Сергей Николаевич | Водитель | Транспортный участок
Петров Николай Алексеевич | Водитель | Транспортный участок
Пономарев Олег Витальевич | Механик | Транспортный участок

ФИО | Должность | Подразделение
Иванов Сергей Николаевич | Водитель | Транспортный участок
Петров Николай Алексеевич | Водитель | Транспортный участок
Пономарев Олег Валентинович| Механик | Транспортный участок

Запись данных в файл Excel

Используя метод excel_doc = op.Workbook() создаем рабочую книгу. Методом create_sheet(title = 'Лист1', index = 0) создаем рабочие листы книги. У метода есть два параметра title название листи и index номер листа если их несколько. Метод sheet[f"A{i}"] = "текст" используется для записи значений в таблицу. Сохранение файла осуществляется методом save(). Если указать название файла и расширение, то файл сохранится в той же директории, где находится проект. Если необходимо сохранить файл в другом месте необходимо указать полный путь имя и расширение файла.

Результат работы:

-3

Диаграммы и графики

Библиотека openpyxl поддерживает создание графиков, диаграмм и других объектов excel с использование данных, хранящихся в электронной таблице.

Для создания диаграммы, необходимо выполнить следующие действия:

Импортировать необходимые модули библиотеки openpyxl для работы с графиками и диаграммами.

Создать объект Reference() указав диапазон ячеек с данными для построения графика.
Создаем объект
chart() указывая тип создаваемого объекта: график, диаграмма и др.

С методом add_chart() передаем создаваемый объект и указываем начальное расположение графика. Верхний левый угол диаграммы привязан к ячейке С2, а размер по умолчанию 15 х 7,5 см.

Результат работы:

-4

Аналогично можно создавать диаграммы и графики, точечные, круговые, вызывая методы: chart.LineChart(), chart.ScatterChart(), chart.PieChart()

В данной статье мы рассмотрели основы работы с библиотекой openpyxl, научились читать и записывать файлы Excel, создавать новые файлы, а также строить диаграммы и графики.

С уважением, Карян Армен.
Занимаюсь профессиональной разработкой прикладных программ на Python.
email SoftSAR@yandex.ru
Telegram @SoftSar_am

Наука
7 млн интересуются