微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在字符串替换中多次引用相同的输入?

如何解决在字符串替换中多次引用相同的输入?

| 我需要打印这样的东西
\"a=name1,b=name2,c=name1,d=name2\"
虽然我在变量n1 n2中有name1和name2
n1=\"name1\"
n2=\"name2\"
我想做什么
\"a=%s,b=%s,c=%s,d=%s\" % (n1,n2,n1,n2)
有没有比这更好的方法了?避免n1,n2,n1,n2的方法? 用python 3? 那如果
print sys.version_info
(2,1,\'final\',0) 
    

解决方法

\"a=%(name1)s,b=%(name2)s,c=%(name1)s,d=%(name2)s\" % {\'name1\': n1,\'name2\': n2}
    ,只要简单地复制元组,就可以使用元组乘法来简化,否则使用另一个答案中所示的字典插值或使用
string.format
(n1,n2,n1,n2) == (n1,n2) * 2
使用
format
的示例:
\"a={0},b={1},c={0},d={1}\".format(name1,name2)
或者,您可以使用
string.replace
\"a=n1,b=n2,c=n1,d=n2\".replace(\'n1\',name1).replace(\'n2\',name2)
但这至少是容易出错的。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。