将模板替换值存储在单独的文件中

时间:2013-07-25 17:49:07

标签: python templates

使用string.Template我希望将值存储在模板中,以便在我可以循环的单独文件中替换。

循环是容易的部分。然后我想运行

result = s.safe_substitute(title=titleVar, content=contentVar)

在我的模板上。我只是有点难以将这些值存储在文本文件中,以及如何使用python读取该文件。

1 个答案:

答案 0 :(得分:0)

您要找的是致电serialization。在这种情况下,您想序列化一个字典,例如

values = dict(title='titleVar', content='contentVar')

有很多方法可以使用XML,pickle,YAML,JSON格式进行序列化。以下是使用JSON的方法:

import string
import json

values = dict(title='titleVar', content='contentVar')

with open('/tmp/values', 'w') as f:
    json.dump(values, f)

with open('/tmp/values', 'r') as f:
    newvals = json.load(f)


s = string.Template('''\
$title 
$content''')
result = s.safe_substitute(newvals)
print(result)