您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python中的字符串替换操作示例

5b51 2022/1/14 8:19:02 python 字数 2539 阅读 387 来源 www.jb51.cc/python

字符串的替换(interpolation),可以使用string.Template,也可以使用标准字符串的拼接.

概述

字符串的替换(interpolation),可以使用string.Template,也可以使用标准字符串的拼接.
string.Template标示替换的字符,使用"$"符号,或 在字符串内,使用"${}"; 调用时使用string.substitute(dict)函数.
标准字符串拼接,使用"%()s"的符号,调用时,使用string%dict方法.
两者都可以进行字符的替换.

代码:

# -*- coding: utf-8 -*- 
 
import string 
 
values = {'var' : 'foo'} 
 
tem = string.Template(''''' 
Variable : $var 
Escape : $$ 
Variable in text : ${var}iable 
''') 
 
print 'TEMPLATE:',tem.substitute(values) 
 
str = ''''' 
Variable : %(var)s 
Escape : %% 
Variable in text : %(var)siable 
''' 
 
print 'INTERPOLATION:',str%values 

输出:

TEMPLATE:  
Variable : foo 
Escape : $ 
Variable in text : fooiable 
 
INTERPOLATION:  
Variable : foo 
Escape : % 
Variable in text : fooiable 

连续替换(replace)的正则表达式(re)
字符串连续替换,可以连续使用replace,也可以使用正则表达式.
正则表达式,通过字典的样式,key为待替换,value为替换成,进行一次替换即可.

代码

# -*- coding: utf-8 -*-

import re

my_str = "(condition1) and --condition2--"
print my_str.replace("condition1","").replace("condition2","text")

rep = {"condition1": "","condition2": "text"}
rep = dict((re.escape(k),v) for k,v in rep.iteritems())
pattern = re.compile("|".join(rep.keys()))
my_str = pattern.sub(lambda m: rep[re.escape(m.group(0))],my_str)

print my_str

输出:

() and --text--
() and --text--

总结

以上是编程之家为你收集整理的Python中的字符串替换操作示例全部内容,希望文章能够帮你解决Python中的字符串替换操作示例所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶