概要
この記事では、Python で docx ファイルにおいて jinja2 テンプレートを使用可能にするパッケージ python-docx-template
の使い方を整理します。
インストール
pip install docxtpl
基本の使い方
docx ファイルに jinja2 形式でコマンドを記入します。
よく使うのは以下のコマンドです。
- 変数の表示:
{{ 変数名 }}
- ループ:
{% for element in sequence %} {element.myproperty} {% endfor %}
書けたら以下のスクリプトで処理します。
from docxtpl import DocxTemplate doc = DocxTemplate("template_demo.docx") doc.render( { "xs": [ { "name":" taro", "age": 16 }, { "name": "hanako", "age": 20 }, ], } ) doc.save("out.docx")
通常の jinja2 との違い
- タグは
run
単位でしか書けません。run
は同じ書式の文字列の系列のことです。
所感
仕事でレポート生成に使うので調査しました。