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


Posted in Python onJune 27, 2016

字符串的替换(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面向对象编程中的类和对象学习教程
Mar 30 Python
在Python中操作字典之setdefault()方法的使用
May 21 Python
Python numpy生成矩阵、串联矩阵代码分享
Dec 04 Python
python实现在遍历列表时,直接对dict元素增加字段的方法
Jan 15 Python
Pytorch抽取网络层的Feature Map(Vgg)实例
Aug 20 Python
Python while循环使用else语句代码实例
Feb 07 Python
Python如何将函数值赋给变量
Apr 28 Python
python实现梯度下降算法的实例详解
Aug 17 Python
python 中关于pycharm选择运行环境的问题
Oct 31 Python
python 基于PYMYSQL使用MYSQL数据库
Dec 24 Python
PyQt实现计数器的方法示例
Jan 18 Python
Django基础CBV装饰器和中间件
Mar 22 Python
Python的string模块中的Template类字符串模板用法
Jun 27 #Python
Python的Flask框架及Nginx实现静态文件访问限制功能
Jun 27 #Python
总结网络IO模型与select模型的Python实例讲解
Jun 27 #Python
结合Python的SimpleHTTPServer源码来解析socket通信
Jun 27 #Python
Python的Tornado框架的异步任务与AsyncHTTPClient
Jun 27 #Python
深入解析Python中的descriptor描述器的作用及用法
Jun 27 #Python
Python中的字符串查找操作方法总结
Jun 27 #Python
You might like
DSP接收机前端设想
2021/03/02 无线电
使用 eAccelerator加速PHP代码的方法
2007/09/30 PHP
php数组函数序列之rsort() - 对数组的元素值进行降序排序
2011/11/02 PHP
代码精简的可以实现元素圆角的js函数
2007/07/21 Javascript
jQuery.extend 函数的详细用法
2012/06/27 Javascript
JS文本框不能输入空格验证方法
2013/03/19 Javascript
简介可以自动完成UI的AngularJS工具angular-smarty
2015/06/23 Javascript
js中的eval()函数把含有转义字符的字符串转换成Object对象的方法
2016/12/02 Javascript
令按钮悬浮在(手机)页面底部的实现方法
2017/05/02 Javascript
Javascript Promise用法详解
2018/05/10 Javascript
JS动画实现回调地狱promise的实例代码详解
2018/11/08 Javascript
Angular CLI 使用教程指南参考小结
2019/04/10 Javascript
微信小程序scroll-view隐藏滚动条的方法详解
2020/03/25 Javascript
Nuxt默认模板、默认布局和自定义错误页面的实现
2020/05/11 Javascript
js实现无缝轮播图插件封装
2020/07/31 Javascript
JavaScript 事件代理需要注意的地方
2020/09/08 Javascript
Python编程之变量赋值操作实例分析
2017/07/24 Python
Python提取转移文件夹内所有.jpg文件并查看每一帧的方法
2019/06/27 Python
用python求一重积分和二重积分的例子
2019/12/06 Python
Python如何基于Tesseract实现识别文字功能
2020/06/05 Python
Python接收手机短信的代码整理
2020/08/02 Python
Python importlib模块重载使用方法详解
2020/10/13 Python
Python应用自动化部署工具Fabric原理及使用解析
2020/11/30 Python
澳大利亚百货公司:David Jones
2018/02/08 全球购物
Public Desire美国/加拿大:全球性的在线鞋类品牌
2018/12/17 全球购物
雅诗兰黛澳大利亚官网:Estée Lauder澳大利亚
2019/05/31 全球购物
用C或者C++语言实现SOCKET通信
2015/02/24 面试题
JAVA招聘远程笔试题
2015/07/23 面试题
财务会计大学生自我评价
2014/04/09 职场文书
团日活动总结书
2014/05/08 职场文书
2014年德育工作总结
2014/11/20 职场文书
商务英语求职信范文
2015/03/19 职场文书
公司劳动纪律管理制度
2015/08/04 职场文书
演讲稿之开卷有益
2019/08/07 职场文书
Python基础之函数嵌套知识总结
2021/05/23 Python
微信小程序APP的生命周期及页面的生命周期
2022/04/19 Javascript