7.5. Работа с файлами Excel.

Онлайн-тренажер Python 3 для начинающих

Теория без воды. Задачи с автоматической проверкой. Подсказки на русском языке. Работает в любом современном браузере.

начать бесплатно

Самоучитель Python 3, собранный из материалов данного сайта. Предназначен в основном для тех, кто хочет изучить язык программирования Python с нуля.

Работа с файлами Excel в Python может быть выполнена с использованием различных библиотек, наиболее популярными из которых являются openpyxlxlrdpandas и xlsxwriter. Давайте рассмотрим основные возможности каждой из этих библиотек:
 
openpyxl
Предоставляет возможность чтения, записи и редактирования файлов Excel формата .xlsx. С помощью этой библиотеки можно создавать новые файлы Excel, изменять существующие и извлекать данные из них. Пример чтения данных из файла Excel:
from openpyxl import load_workbook

wb = load_workbook('example.xlsx')
sheet = wb.active

for row in sheet.iter_rows(values_only=True):
    print(row)
 
xlrd
Предоставляет возможность чтения данных из файлов Excel формата .xls (Excel 2003 и более ранних версий). С помощью этой библиотеки можно извлекать данные из файлов Excel и выполнять различные операции с ними. Пример чтения данных из файла Excel:
import xlrd

wb = xlrd.open_workbook('example.xls')
sheet = wb.sheet_by_index(0)

for row in range(sheet.nrows):
    print(sheet.row_values(row))
 
pandas
Библиотека для анализа данных, которая позволяет работать с файлами Excel форматов .xls и .xlsx. С помощью pandas можно загружать данные из файлов Excel в виде DataFrame, выполнять анализ данных, фильтрацию, обработку и многое другое.
import pandas as pd

df = pd.read_excel('example.xlsx')
print(df)
df.to_excel('output.xlsx', index=False)
 
xlsxwriter
Библиотека для создания файлов Excel формата .xlsx. С помощью xlsxwriter можно создавать новые файлы Excel, добавлять данные в них, форматировать ячейки и диаграммы.
import xlsxwriter

workbook = xlsxwriter.Workbook('output.xlsx')
worksheet = workbook.add_worksheet()

data = [['Hello', 'World'], [1, 2, 3]]

for row_num, row_data in enumerate(data):
    for col_num, col_value in enumerate(row_data):
    worksheet.write(row_num, col_num, col_value)

workbook.close()
Каждая из этих библиотек имеет свои особенности и предназначена для различных сценариев использования. Выбор конкретной библиотеки зависит от ваших потребностей и требований к проекту.
 
Пример работы с ячейками с использованием библиотеки openpyxl
from openpyxl import Workbook, load_workbook

# Создание нового файла Excel и добавление данных
wb = Workbook()
ws = wb.active
ws['A1'] = 'Hello'
ws['B1'] = 'World'
wb.save('example_openpyxl.xlsx')

# Загрузка существующего файла Excel и чтение данных
wb_loaded = load_workbook('example_openpyxl.xlsx')
ws_loaded = wb_loaded.active
cell_value = ws_loaded['A1'].value
print("Value of cell A1:", cell_value)
 
Пример работы с ячейками с использованием библиотеки xlrd
import xlrd

# Чтение данных из существующего файла Excel
wb = xlrd.open_workbook('example_xlrd.xls')
sheet = wb.sheet_by_index(0)
cell_value = sheet.cell_value(0, 0)
print("Value of cell A1:", cell_value)
 
Пример работы с ячейками с использованием библиотеки pandas
import pandas as pd

# Загрузка данных из файла Excel в DataFrame
df = pd.read_excel('example_pandas.xlsx')
cell_value = df.iloc[0, 0]
print("Value of cell A1:", cell_value)
 
Пример работы с ячейками с использованием библиотеки xlsxwriter
import xlsxwriter

# Создание нового файла Excel и запись данных
workbook = xlsxwriter.Workbook('example_xlsxwriter.xlsx')
worksheet = workbook.add_worksheet()
worksheet.write('A1', 'Hello')
worksheet.write('B1', 'World')
workbook.close()

# Чтение данных из существующего файла Excel
wb_loaded = xlrd.open_workbook('example_xlsxwriter.xlsx')
sheet_loaded = wb_loaded.sheet_by_index(0)
cell_value = sheet_loaded.cell_value(0, 0)
print("Value of cell A1:", cell_value)

 

категории

ТЕОРИЯ

  • Введение в Python
  • Основы программирования на Python
  • Управляющие конструкции
  • Структуры данных
  • Функции и модули
  • Обработка исключений
  • Работа с файлами и потоками
  • файловая система
  • Объектно-ориентированное программирование (ООП)
  • Регулярные выражения
  • Дополнительные темы

Мы в соцсетях