Excelを操作できるPythonライブラリには、以下のような代表的なものがあります:
特徴: データの読み込みや加工が得意で、Excelファイルの読み書きもサポートしています。
使用例:
import pandas as pd
# Excelファイルの読み込み
df = pd.read_excel("sample.xlsx", sheet_name="Sheet1")
# データを加工後、Excelファイルに書き込み
df.to_excel("output.xlsx", index=False)
特徴: Excelファイル(特に.xlsx形式)の読み書きが可能で、セルの書式設定や数式の挿入、画像の追加なども行えます。
使用例:
from openpyxl import load_workbook, Workbook
# Excelファイルの読み込み
wb = load_workbook("sample.xlsx")
ws = wb.active
ws["A1"] = "Hello, Excel!"
# ファイルに保存
wb.save("output.xlsx")
特徴: Excelファイルの書き込み専用ライブラリで、セルの書式設定やグラフの作成、画像の挿入などが行えます。特に出力の見栄えを重視する場合に便利です。
使用例:
import xlsxwriter
# ワークブックとワークシートを作成
workbook = xlsxwriter.Workbook("output.xlsx")
worksheet = workbook.add_worksheet()
worksheet.write("A1", "Hello, Excel!")
workbook.close()
特徴: 古いExcelファイル(.xls形式)の読み込みに特化していますが、.xlsxファイルには非対応です(ただし、pandas
と組み合わせて使用することが一般的です)。
使用例:
import xlrd
# Excelファイルの読み込み
book = xlrd.open_workbook("sample.xls")
sheet = book.sheet_by_index(0)
cell_value = sheet.cell(0, 0).value
特徴: Excelだけでなく、CSVやODSなど、さまざまな表計算フォーマットをサポートしています。
使用例:
import pyexcel as p
# Excelファイルの読み込み
records = p.get_records(file_name="sample.xlsx")
# データの書き込み
p.save_as(records=records, dest_file_name="output.xlsx")
特徴: Excelのバイナリ形式(.xlsb)の読み込みに特化したライブラリです。
使用例:
from pyxlsb import open_workbook
with open_workbook("sample.xlsb") as wb:
with wb.get_sheet(1) as sheet:
for row in sheet.rows():
print([item.v for item in row])