首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模板字符串python 2.5错误

模板字符串python 2.5错误
EN

Stack Overflow用户
提问于 2010-05-04 23:57:08
回答 3查看 235关注 0票数 1
代码语言:javascript
复制
#!/usr/bin/python

from string import Template

s = Template('$x, go home $x')
s.substitute(x='lee')

print s

我得到的错误是

代码语言:javascript
复制
<string.Template object at 0x81abdcc>

我想要的结果是:李,回家吧李

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-05-04 23:59:45

您需要查看substitute的返回值。它给出了执行了替换的字符串。

代码语言:javascript
复制
print s.substitute(x='lee')

模板对象本身(s)不变。这使您能够使用相同的模板对象执行多个替换。

票数 7
EN

Stack Overflow用户

发布于 2010-05-05 00:01:41

您得到的不是错误:您得到的正是您所要求的--模板本身。为了达到您的预期效果,

代码语言:javascript
复制
print s.substitute(x='lee')

与字符串一样,模板也是而不是可变对象:在模板(或字符串)上调用的任何方法永远不会改变该模板--它只能产生一个单独的结果,供您使用。当然,这也适用于.substitute方法。您正在调用它,但忽略了结果,然后打印模板--毫无疑问,您希望模板本身会以某种方式进行更改,但这不是它的工作方式。

票数 3
EN

Stack Overflow用户

发布于 2010-05-05 00:00:04

代码语言:javascript
复制
print s.substitute(x='lee')
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2766872

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档