在很多時候我需要用來字符串模板,類型於django的模板,寫一個html,裏面會包含很多變量,最後展示的時候是用上下文來替換模板中的變量。
現在舉例講講python中字符串模板是怎麼使用的:
我們準備好模板字符串,和上下文字典:
str="我的名子叫$name,我的年齡是$age"
map={name:"xxjin",age:"28"}
然後我們開始使用模板來替換
temp =Template(str)
result=temp.substitute(map)
print result
最後的結果應該是:我的名子叫xxjin,我的年齡是28
注意,在模板中的變量,默認是以$美元符號的定義的,即上面的$name,$age等。
如果想要修改這個符號,怎麼辦呢?
可以這樣做:
在類Template中變量delimiter定義了這個符號
我們可以自定義類,繼承Template,並重寫delimiter變量。
舉例:
class NewTemplate(Template):
"""docstring for MyTemplate"""
delimiter = '#'
這時候我們的模板就要寫成“我的名子叫#name,我的年齡是#age”,完整如下:
temp =NewTemplate(str)
result=temp.substitute(map)
print result