熱線電話:13121318867

登錄
首頁精彩閱讀Python中的字符串替換操作示例
Python中的字符串替換操作示例
2017-09-02
收藏

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

這篇文章主要介紹了Python中的字符串替換操作示例,包括一則使用字符串模板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--

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢