是否可以使用Python 3.4的内置字符串格式化工具将任意可迭代项重复格式化为一个通用模板?
即我想知道是否有一些魔法可以渲染单个字符串,例如:
TEMPLATE = '''Hello {name},
these are your items:
* {item for item in items}'''
使用string.format
OUTPUT = TEMPLATE.format(name='John Doe', items=['foo', 'bar', 123])
这样输出将是:
Hello John Doe,
these are your items:
* foo
* bar
* 123
我知道我可以使用单个项目的单独模板来实现结果,然后将其呈现为上级格式字符串。但我想一步到位。
最佳答案
我建议您针对此用例使用 Jinja2 模板 - 它非常快并且很多人都使用它。
参见http://jinja.pocoo.org了解更多信息。
关于python - 在一个模板中格式化任意可迭代对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46909813/