直接上代码:
import string
a = string.Template('$var1 is $var2')
print(eval(a.substitute(var1='1',var2='11')))
b = string.Template('$var1 == $var2')
print(eval(b.substitute(var1='1',var2='11')))
x1,x2=1,1
print(eval(a.substitute(var1='x1',var2='x2')))
x3,x4=[1,2,4],[1,2,4]
print(eval(a.substitute(var1='x3',var2='x4')))
x5,x6=(1,2,4),(1,2,4)
print(eval(a.substitute(var1='x5',var2='x6')))
c = string.Template('$var1 + $var2')
print(eval(c.substitute(var1='x5',var2='x6')))
print(eval(c.substitute(var1='x3',var2='x4')))
x7,x8="abc","acd"
print(eval(c.substitute(var1='x7',var2='x8')))
运行结果:
False
False
True
False
False
(1, 2, 4, 1, 2, 4)
[1, 2, 4, 1, 2, 4]
abcacd
这篇博客探讨了如何在Python中利用`string.Template`模版和`eval`函数来求值字符串中的变量。示例代码展示了不同情况下的变量替换,包括基本类型和列表、元组的比较,以及加法操作。运行结果显示了各种组合下的输出,强调了`eval`在处理字符串表达式时的用法。
368

被折叠的 条评论
为什么被折叠?



