PythonでExcelファイルの書き込みを行う方法:xlwt

PythonでExcelファイルを作成してデータを書き込む方法を説明します。Pythonでエクセルを読み込むには、xlwtというライブラリを使います。 次から、このxlwtの導入の仕方から実際の使い方まで説明します。

xlwtライブラリを導入する

xlwtは標準ライブラリではありませんので、ライブラリをインストールをする必要があります。 ライブラリのインストールには「pip」を使うと便利です。 pipを使う場合は以下のコマンドを入力するだけで簡単にインストールできます。
$ pip install xlwt

Excelファイルを作成・保存する

Excelファイルを作成・保存する場合は、saveを使用します。また、シートの追加にはadd_sheetを使用します。
import xlwt

book = xlwt.Workbook()
sheet1 = book.add_sheet('sheet1')
book.save('test.xls')
Excelファイルを作成する際は少なくとも1つはシートを作成しなければなりません。上のプログラムでは「sheet1」のシートをもったExcelファイル(test.xls)が作成されます。

セルに値を書き込む

セルに値を書き込むときにはwriteを使用します。writeは引数に(行番号, 列番号, 値)を設定します。
import xlwt

book = xlwt.Workbook()
sheet1 = book.add_sheet('sheet1')

sheet1.write(0, 0, 100)
sheet1.write(0, 1, 200)
sheet1.write(1, 0, 300)
sheet1.write(1, 1, 400)

book.save('test.xls')
上の例ではA1に100、B1に200、A2に300、A4に400が書き込まれます。行番号、列番号はともに0から始まるので注意が必要です。

セルに関数を挿入する

セルに関数を挿入する場合は、Formulaオブジェクトを使用します。
import xlwt

book = xlwt.Workbook()
sheet1 = book.add_sheet('sheet1')

sheet1.write(0, 0, "Name")
sheet1.write(0, 1, "Price")
sheet1.write(1, 0, "Apple")
sheet1.write(1, 1, 100)
sheet1.write(2, 0, "Banana")
sheet1.write(2, 1, 200)
sheet1.write(3, 0, "Sum")
sheet1.write(3, 1, 'xlwt.Formula(sum(B2:B3))')

book.save('test.xls')
上の例では、B4にSUM関数が書き込まれます。 このように、xlwtライブラリを使うと簡単にエクセルの読み込みと操作を行うことができます。

イベント

2017/10/06(金)
UX School(全10回)