Linux でエクセルファイルを作成
〜 Python の XlsxWriter を使う 〜

2016-08-25 作成 福島
TOP > tips > xlsxwriter
1. Python pip の用意
※既に python pip がインストールされている場合は読み飛ばしてください。

1-1. Python pip のインストール
$ su
# yum install epel-release
# yum install python-pip
# pip install --upgrade pip
2. XlsxWriter のインストール
2-1. XlsxWriter をインストール
$ su
# pip install XlsxWriter
# exit
$ pip list | grep XlsxWriter
XlsxWriter (0.9.3)
3. XlsxWriter を使ってみる
$ python
Python 2.6.6 (r266:84292, Aug 18 2016, 15:13:37)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import xlsxwriter

>>> # エクセルファイルの新規作成とワークシートの追加。
>>> book = xlsxwriter.Workbook('demo.xlsx')
>>> sheet = book.add_worksheet()

>>> # セル A の列幅を 20 ポイントにする。(誤差があります)
>>> sheet.set_column('A:A', 20)
0

>>> # ボールド文字属性を取得 (作成) する。
>>> bold = book.add_format({'bold': True})

>>> # セルに文字列を入れる。
>>> sheet.write('A1', 'Hello')
0

>>> # ボールドを指定して文字列を入れる。
>>> sheet.write('A2', 'World', bold)
0

>>> # 行/列の位置番号を指定して数値を入れる。
>>> sheet.write(2, 0, 123)	# セル A3 に 123 を入れる。
0
>>> sheet.write(3, 0, 123.456)	# セル A4 に 123.456 を入れる。
0

>>> # 画像を挿入する。(画像を用意していないのでエラーになる)
>>> sheet.insert_image('B5', 'logo.png')
/usr/lib/python2.6/site-packages/xlsxwriter/worksheet.py:1042: UserWarning: Image file 'logo.png' not found.
  warn("Image file '%s' not found." % force_unicode(filename))
-1

>>> # エクセルファイルの操作を終了する。
>>> book.close()
>>> ^D

$ ls -l demo.xlsx
-rw-rw-r--. 1 user user 5366  8月 25 14:41 2016 demo.xlsx
$

結果 (Microsoft Office Professional Plus 2013 の Excel で表示)


詳しい使い方は ここ を参照すること。(ちょっとだけ翻訳してみた)