繁体   English   中英

在Python中使用string.Template进行动态字符串替换

[英]dynamic string substitution using string.Template in Python

是否可以使用Python的string.Template进行动态字符串替换? 更确切地说,我不想将标识符的出现替换为函数的结果,例如

from string import Template

f = lambda s: "123"

templateString = """first line: $replaceme
2nd line "$replaceme" """

s = Template(templateString).substitute(replaceme=f)

代替评估f它使用字符串表示形式:

first line: <function <lambda> at 0x7fb0367e3488>
2nd line "<function <lambda> at 0x7fb0367e3488>"

任何想法如何用f的结果进行替换?

您需要通过执行f()来调用f f表示函数; f()表示其返回值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM