使用string.Template
我想将替换到模板中的值存储在可以循环的单独文件中。
循环是最容易的部分。然后我想跑
result = s.safe_substitute(title=titleVar, content=contentVar)
在我的模板上。我对将这些值存储在文本文件中的格式以及如何使用 python 读取该文件感到有点困惑。
您正在寻找的是调用序列化。在这种情况下,您要序列化一个字典,例如
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)