Jinja2で10進数をフォーマットする必要があります。
日付をフォーマットする必要がある場合、次のようにテンプレートでstrftime()メソッドを呼び出します。
{{ somedate.strftime('%Y-%m-%d') }}
数字を超えてこれを行うための同様のアプローチがあるのだろうか。
前もって感謝します!
Python方法:
{{ '%04d' % 42 }}
{{ 'Number: %d' % variable }}
またはその方法を使用します:
{{ '%d' | format(42) }}
私は個人的に最初の方が好きです。Pythonの場合とまったく同じだからです。
Joran Beasleyのコメントを強調したいのは、それが最良の解決策だと思うからです。
元のコメント:
{{"{0:0.2f}"。format(my_num)}}または{{my_num | format "%0.2f"}}(wsgiarea.pocoo.org/jinja/docs/filters.html#format )–ジョランビーズリー12年10月1日21:07`
実際、{{ '{0:0.2f}'.format(100) }}
は素晴らしく機能します。
これはpython文字列のフォーマットです。最初の引数{0}
、次の形式でフォーマットします0.2f
。
ラウンドを使用すると、指定された精度の使用法に数値を丸めることができます:
round(value, precision=0, method='common')
最初のパラメーターは精度(デフォルトは0)を指定し、2番目のパラメーターは3から選択できる丸め方法を指定します。
'common' rounds either up or down
'ceil' always rounds up
'floor' always rounds down
フォーマットとパディングは同じように機能します。
{{ "{0}".format(size).rjust(15) }}