任何事情都是由量变到质变的过程,学习Python也不例外。
只有把一个语言中的常用函数了如指掌了,才能在处理问题的过程中得心应手,快速地找到最优方案。
本文和你一起来探索Python中的replace函数,让你以最短的时间明白这个函数的原理。
也可以利用碎片化的时间巩固这个函数,让你在处理工作过程中更高效。
replace函数定义
replace函数实例
例1 replace函数替换字符串中的旧串
例2 replace函数替换字符串中旧串并限制次数
replace函数和apply函数结合使用
3.1 导入库并加载数据
3.2 展示指标列的数据并分析待删除的字符
3.3 应用replace函数和apply函数删除相应字符

replace函数是Python中常用的内置函数,调用无需加载库,直接使用即可。
见名思意,它主要用来把一个字符串中的旧串替换成指定新串。
其基本调用语法如下:
str.replace(old, new, times)str:字符串。
old:字符串中旧的子串。 new:用来替换的新字符串。
times:新字符串最多替换旧字符串的次数。
二、replace函数实例 例1:replace函数替换字符串中的旧串
我们先来看下使用replace函数对字符串中的旧串进行替换,代码如下:
str1 = '2021年我开启了人生新的一段旅程,有快乐、有挑战、有成长、也有收获。我希望未来的岁月里,我能勇敢地面对真实的内心,不留遗憾地去生活。'old = '2021年'new = '2022年'str1.replace(old, new)得到结果:
'2022年我开启了人生新的一段旅程,有快乐、有挑战、有成长、也有收获。我希望未来的岁月里,我能勇敢地面对真实的内心,不留遗憾地去生活。'从结果知,replace函数把字符串中的旧串替换成了新的指定字符串。
例2:replace函数替换字符串中旧串并限制次数
接着来看下使用replace函数对字符串中的旧串进行替换并限制替换的最高次数,代码如下:
str1 = '2021年我开启了人生新的一段旅程,有快乐、有挑战、有成长、也有收获。我希望未来的岁月里,我能勇敢地面对自己的内心,不留遗憾地去生活。'old = '我'new = ''times = 2str1.replace(old, new, times)得到结果:
'2021年开启了人生新的一段旅程,有快乐、有挑战、有成长、也有收获。希望未来的岁月里,我能勇敢地面对真实的内心,不留遗憾地去生活。'str1中总计有3个”我“字符,times限定了最高替换次数为2,所以replace函数依次替换了str1中的两个”我“,保留了最后一个"我"。
三、replace函数和apply函数结合使用 1 导入库并加载数据
首先导入本文需要的库并加载数据,如果你有些库还没有安装,导致运行代码时报错,可以在Anaconda Prompt中用pip方法安装。
import osimport numpy as npimport pandas as pd#导入库os.chdir(r'F:\公众号\63.我国和台湾贸易往来')#设置存储数据的文件夹impt_date = pd.read_csv('中国从亚洲各国(地区)进口总额.csv', error_bad_lines=False, encoding='gbk')#进口数据读取impt_date.head(2)#打印数据的前2行得到结果:
为了在绘图的时候指标展示清晰简洁,可以把指标列中公共字符删除,放到图标题中统一说明。
2 展示指标列的数据并分析待删除的字符
接着应用value_counts()函数展示指标列的数据,代码如下:
impt_date['指标'].value_counts()得到结果:
中国从亚洲进口总额(万美元) 1中国从缅甸进口总额(万美元) 1中国从约旦进口总额(万美元) 1中国从乌兹别克斯坦进口总额(万美元) 1中国从亚洲其他国家(地区)进口总额(万美元) 1中国从菲律宾进口总额(万美元) 1中国从尼泊尔进口总额(万美元) 1中国从阿曼进口总额(万美元) 1中国从中国澳门进口总额(万美元) 1中国从伊拉克进口总额(万美元) 1中国从哈萨克斯坦进口总额(万美元) 1中国从朝鲜进口总额(万美元) 1中国从老挝进口总额(万美元) 1中国从印度进口总额(万美元) 1中国从沙特阿拉伯进口总额(万美元) 1中国从中国香港进口总额(万美元) 1中国从以色列进口总额(万美元) 1中国从不丹进口总额(万美元) 1中国从中国台湾进口总额(万美元) 1中国从巴勒斯坦进口总额(万美元) 1中国从蒙古进口总额(万美元) 1中国从叙利亚进口总额(万美元) 1中国从越南进口总额(万美元) 1中国从孟加拉国进口总额(万美元) 1中国从也门共和国进口总额(万美元) 1中国从土耳其进口总额(万美元) 1中国从塔吉克斯坦进口总额(万美元) 1中国从东帝汶进口总额(万美元) 1中国从巴基斯坦进口总额(万美元) 1中国从吉尔吉斯斯坦进口总额(万美元) 1中国从印度尼西亚进口总额(万美元) 1中国从马尔代夫进口总额(万美元) 1中国从韩国进口总额(万美元) 1中国从新加坡进口总额(万美元) 1中国从文莱进口总额(万美元) 1中国从柬埔寨进口总额(万美元) 1中国从土库曼斯坦进口总额(万美元) 1中国从黎巴嫩进口总额(万美元) 1中国从泰国进口总额(万美元) 1中国从斯里兰卡进口总额(万美元) 1中国从科威特进口总额(万美元) 1中国从中华人民共和国进口总额(万美元) 1中国从阿富汗进口总额(万美元) 1中国从伊朗进口总额(万美元) 1中国从巴林进口总额(万美元) 1中国从塞浦路斯进口总额(万美元) 1中国从日本进口总额(万美元) 1中国从阿联酋进口总额(万美元) 1中国从马来西亚进口总额(万美元) 1中国从卡塔尔进口总额(万美元) 1通过分析可以发现待删除的字符为“中国从”和“进口总额(万美元)”。
3 应用replace函数和apply函数删除相应字符
最后应用replace函数和apply函数删除相应字符,具体代码如下:
impt_date['指标'] = impt_date['指标'].apply(lambda x:x.replace('进口总额(万美元)', ''))impt_date['指标'] = impt_date['指标'].apply(lambda x:x.replace('中国从', ''))#去除描述中多余字符impt_date['指标'].value_counts()得到结果:
马尔代夫 1蒙古 1泰国 1哈萨克斯坦 1越南 1中国台湾 1乌兹别克斯坦 1东帝汶 1阿联酋 1塔吉克斯坦 1孟加拉国 1菲律宾 1科威特 1伊朗 1黎巴嫩 1韩国 1伊拉克 1以色列 1塞浦路斯 1马来西亚 1朝鲜 1也门共和国 1印度尼西亚 1不丹 1斯里兰卡 1阿曼 1巴基斯坦 1亚洲其他国家(地区) 1吉尔吉斯斯坦 1日本 1亚洲 1约旦 1叙利亚 1中华人民共和国 1柬埔寨 1沙特阿拉伯 1土耳其 1印度 1巴勒斯坦 1缅甸 1阿富汗 1新加坡 1中国澳门 1文莱 1中国香港 1土库曼斯坦 1老挝 1巴林 1卡塔尔 1尼泊尔 1
如果对apply函数不熟悉,可以看下Python数据分析—apply函数一文。
至此,Python中的replace函数已讲解完毕,如想了解更多Python中的函数,可以翻看公众号中“学习Python”模块相关文章。


扫一扫关注我
13162366985
投稿微信号、手机号


