Jinja2 で number_format を使う
PHP の便利関数の一つに number_format というのがある。
PHP: number_format - Manual
同じ事を Python でやろうとすると、以下が見つかった。
number_format filter | Flask (A Python Microframework)
http://ndiblog.mezquita.jp/archives/96
ロケールを使うのかーと思ってふと、Babel であるんじゃないのか?と思ったらあった。
Babel — Babel 2.6.0 documentation
というわけでこんなフィルタを書いたら行けた。
# -*- coding: utf-8 -*- from flask import Flask from babel.numbers import format_decimal app = Flask(__name__) @app.template_filter() def number_format(number): return format_decimal(number, locale='ja_JP')
{% set price = 12345 %} {{ price|number_format }}
12,345
他に良い方法あるのかな…。