これは、カスタマイズされた電子メール ニュースレターを生成するために使用できる Python の最もシンプルで軽量な HTML テンプレート エンジンです。
6977 次
5 に答える
17
非常にマイナーなテンプレート タスクの場合、Python 自体はそれほど悪くはありません。例:
def dynamic_text(name, food):
return """
Dear %(name)s,
We're glad to hear that you like %(food)s and we'll be sending you some more soon.
""" % {'name':name, 'food':food}
この意味で、単純なテンプレート化のために Python で文字列の書式設定を使用できます。それはそれが得られるのと同じくらい軽量です。
もう少し深く掘り下げたい場合、Jinja2は多くの意見で最も「デザイナーに優しい」(読み: シンプルな) テンプレート エンジンです。
マコとゲンシも見ることができます。最終的には、選択はあなた次第です (あなたが望む機能を備え、システムとうまく統合されるもの)。
于 2010-12-10T06:04:55.007 に答える
16
string.Templateに何か問題がありますか?これは標準のPythonディストリビューションに含まれており、PEP292でカバーされています。
from string import Template
form=Template('''Dear $john,
I am sorry to imform you, $john, but you will not be my husband
when you return from the $theater war. So sorry about that. Your
$action has caused me to reconsider.
Yours [NOT!!] forever,
Becky
''')
first={'john':'Joe','theater':'Afgan','action':'love'}
second={'john':'Robert','theater':'Iraq','action':'kiss'}
third={'john':'Jose','theater':'Korean','action':'discussion'}
print form.substitute(first)
print form.substitute(second)
print form.substitute(third)
于 2010-12-10T06:06:21.623 に答える
1
Werkzeug Mini Templatesは、この法案にかなり合っていると思います。
Githubにあるソースコードはこちら。
于 2010-12-10T06:05:53.343 に答える
-2
python-micro-template を試してみてください:
https://github.com/diyism/python-micro-template
使用例(kivy):
import python_micro_template
...
kvml=open('example_kivy_scrollview.kvml', 'r').read()
kvml=python_micro_template.tpl.parse(kvml)
grid=Builder.load_string(kvml)
...
テンプレート例(kvml):
<:for i in range(30):#{#:>
Button:
text: '<:=i:><:for j in range(6):#{#:><:=j:><:#}#:>'
size: 480, 40
size_hint: None, None
<:#}#:>
于 2014-02-26T02:41:00.637 に答える