2

それぞれ1と2に等しい2つの変数「1」と「2」があると仮定します。可能であれば、マコテンプレートでそれらをどのように分割できますか? 私は次のようなものが欲しい:

${"{0:.2f}".format(one/two)}

テンプレートで出力したい結果は: 0.50

私はpython 2.xを使用しています。

4

1 に答える 1

2

次の引数に追加divisionする必要があります。future_importsTemplate

>>> from mako.template import Template
>>> print Template("${a/b}").render(a=1, b=2)
0
>>> print Template("${a/b}", future_imports=['division']).render(a=1, b=2)
0.5
>>> print Template("${'{0:.2f}'.format(a/b)}", future_imports=["division"]).render(a=1, b=2)
0.50

ドキュメントからの引用:

future_imports– インポート元の名前の文字列リスト__future__。これらはカンマ区切りの文字列に連結され、テンプレートの先頭に挿入されます。たとえば、futures_imports=['FOO', 'BAR'] 結果はfrom __future__ import FOO, BAR. 新しい除算演算子のような機能の使用に関心がある場合は、 future_importsそれをレンダラーに伝達するために使用する必要があります。そうしないと、生成されたコードでインポートが最初に実行されたステートメントとして表示されず、目的の効果が得られないためです。

于 2013-08-20T21:11:28.863 に答える