Python字符串中删除特定字符的方法


Posted in Python onJanuary 15, 2020

分析

在Python中,字符串是不可变的。所以无法直接删除字符串之间的特定字符。
所以想对字符串中字符进行操作的时候,需要将字符串转变为列表,列表是可变的,这样就可以实现对字符串中特定字符的操作。

1、删除特定字符

特定字符的删除,思路跟插入字符类似。

可以分为两类,删除特定位置的字符 或者 删除指定字符

1.1、删除特定位置的字符

使用.pop()方法。输入参数,即为要删除的索引。

string = '公众号:土堆碎念'
list_str = list(string)
list_str.pop(1)
list_str = ''.join(list_str)
print(list_str)

输出:

Python字符串中删除特定字符的方法

1.2、删除指定字符

删除指定字符与删除特定位置的区别是:删除指定字符,需要提供指定的字符,和需要删除的最大数目。而删除特定位置的字符,只需要提供删除字符的索引即可。

1.3、两种实现

删除的实现,除了像pop方法那种,弹出特定字符的删除,也可以用空字符来替换特定的字符,来实现删除。

.replace()方法

replace(...) method of builtins.str instance
S.replace(old, new[, count]) -> str

比如,字符串a='公众号公众号:土堆碎念',尝试将其中的字符删除,将字符替换成空字符。

注意,它返回的是替换后(在这种情况下,是删除字符)的字符,没有改变原始字符串,也就是说,a还是原来那个a。所以如果想使用替换后的字符,需要指定一个变量进行赋值。

Python字符串中删除特定字符的方法

眼尖的你,发现还有一个可选参数,count

count参数就可以指定要替换几个。我们无意中知道了如何删除指定数目的字符。

Python字符串中删除特定字符的方法

正则表达式

除了使用Python标准库中的方法,还可以使用re正则表达式库,来实现。

使用re.sub()方法,这个方法的功能更强大,可以替换特定模式的字符。

因为模式匹配比较麻烦,所以比较强大。

sub(pattern, repl, string, count=0, flags=0)

pattern代表指定的模式,这是强大的原因,如果简单点使用,只指定特定字符,就可以用'特定字符'来表示模式。

repl代表的是,需要替换成的字符,如果删除,就是替换成空字符。

string代表的是,需要被替换的字符串。

count是替换的次数。

Python字符串中删除特定字符的方法

总结

无论是Python字符串自带的.replace()方法,还是re提供的.sub()方法,都是不改变原来的字符串,返回值才是替换的字符串。所以,如果要使用替换的字符串,就需要将返回值赋值给一个变量。

这两种方法,默认都是替换所有的指定字符。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python的高级Git库 Gittle
Sep 22 Python
python语言使用技巧分享
May 31 Python
Python selenium 三种等待方式解读
Sep 15 Python
Python序列化基础知识(json/pickle)
Oct 19 Python
Python编程scoketServer实现多线程同步实例代码
Jan 29 Python
python3监控CentOS磁盘空间脚本
Jun 21 Python
深入了解Python iter() 方法的用法
Jul 11 Python
np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴
Nov 30 Python
Python使用文件操作实现一个XX信息管理系统的示例
Jul 02 Python
linux mint中搜狗输入法导致pycharm卡死的问题
Oct 28 Python
用python发送微信消息
Dec 21 Python
Python+MySQL随机试卷及答案生成程序的示例代码
Feb 01 Python
计算pytorch标准化(Normalize)所需要数据集的均值和方差实例
Jan 15 #Python
pytorch 图像中的数据预处理和批标准化实例
Jan 15 #Python
pytorch实现特殊的Module--Sqeuential三种写法
Jan 15 #Python
python实现删除列表中某个元素的3种方法
Jan 15 #Python
python opencv根据颜色进行目标检测的方法示例
Jan 15 #Python
Python基于Tensor FLow的图像处理操作详解
Jan 15 #Python
OpenCV哈里斯(Harris)角点检测的实现
Jan 15 #Python
You might like
php中全局变量global的使用演示代码
2011/05/18 PHP
[原创]php简单防盗链验证实现方法
2016/07/09 PHP
jQuery 1.4 15个你应该知道的新特性(译)
2010/01/24 Javascript
js的参数有长度限制吗?发现不能超过2083个字符
2014/04/20 Javascript
基于nodejs+express(4.x+)实现文件上传功能
2015/11/23 NodeJs
详解js中class的多种函数封装方法
2016/01/03 Javascript
ajax跨域调用webservice的实现代码
2016/05/09 Javascript
浅谈Nodejs应用主文件index.js
2016/08/28 NodeJs
解决拦截器对ajax请求的拦截实例详解
2016/12/21 Javascript
javascript滚轮事件基础实例讲解(37)
2017/02/14 Javascript
js实现旋转木马效果
2017/03/17 Javascript
AngularJS动态绑定ng-options的ng-model实例代码
2017/06/21 Javascript
echarts学习笔记之箱线图的分析与绘制详解
2017/11/22 Javascript
详解react内联样式使用webpack将px转rem
2018/09/13 Javascript
vue.js实现备忘录demo
2019/06/26 Javascript
TypeScript中使用getElementXXX()的示例代码
2019/09/12 Javascript
深入分析在Python模块顶层运行的代码引起的一个Bug
2014/07/04 Python
利用Python查看目录中的文件示例详解
2017/08/28 Python
Python代码缩进和测试模块示例详解
2018/05/07 Python
python通过zabbix api获取主机
2018/09/17 Python
python 对多个csv文件分别进行处理的方法
2019/01/07 Python
详解python3 + Scrapy爬虫学习之创建项目
2019/04/12 Python
python内打印变量之%和f的实例
2020/02/19 Python
python使用隐式循环快速求和的实现示例
2020/09/11 Python
python操作toml文件的示例代码
2020/11/27 Python
python wsgiref源码解析
2021/02/06 Python
python实现银行账户系统
2021/02/22 Python
俄罗斯在线大型超市:ТутПросто
2021/01/08 全球购物
高级Java程序员面试题
2016/06/23 面试题
大学辅导员事迹材料
2014/02/05 职场文书
护士演讲稿优秀范文
2014/04/30 职场文书
债务追讨授权委托书范本
2014/10/16 职场文书
2014年财务工作总结范文
2014/11/11 职场文书
学校国庆节活动总结
2015/03/23 职场文书
施工单位工程部经理岗位职责
2015/04/09 职场文书
金砖之国观后感
2015/06/11 职场文书