Python字符串处理的8招秘籍(小结)


Posted in Python onAugust 13, 2019

Python的字符串处理,在爬虫的数据解析、大数据的文本清洗,以及普通文件处理等方面应用非常广泛,而且Python对字符串的处理内置了很多高效的函数,功能非常强大、使用非常方便。今天我就把字符串处理时用到最多的方法总结分享给大家,希望大家可以轻松应对字符串处理。

1.字符串的切片和相乘

(1)切片

str='Monday is a busy day' 
print(str[0:7]) #表示取第一个到第七个的字符串 
print(str[-3:]) #表示取从倒数第三个字符开始到结尾的字符串 
print(str[::])  #复制字符串

(2)相乘

当我们编写Python代码时要分隔符,此时用字符串的乘法操作就很容易实现。

line='*'*30 
print(line) 
>>******************************

2.字符串的分割

(1)普通的分割,用split函数,但是split只能做非常简单的分割,而且不支持多个分隔。

phone='400-800-800-1234' 
print(phone.split('-')) 
>>['400', '800', '800', '1234']

(2)复杂的分割,r表示不转义,分隔符可以是「;」,或者「,」,或者空格后面跟0个多个额外的空格,然后按照这个模式去分割。

line='hello world; python, I ,like,  it' 
import re 
print(re.split(r'[;,s]\s*',line)) 
>>>['hello world', 'python', 'I ', 'like', 'it']

3.字符串的连接和合并

(1)连接,两个字符可以很方便的通过“+”连接起来

str1='Hello' 
str2='World' 
new_str=str1+str2 
print(new_str) 
>>>HelloWorld

(2)合并,用join方法

url=['www','python','org'] 
print('.'.join(url)) 
>>>www.python.org

4.判断字符串是否以指定前缀、后缀结尾

假设我们要查一个文件的名字是以什么开头或者什么结尾?

filename='trace.h' 
print(filename.endswith('h')) 
>>True 
print(filename.startswith('trace')) 
>>True

5.字符串的查找和匹配

(1)一般查找

利用find方法可以很方便的在长的字符串里面查找子字符串,会返回字符串所在位置的索引,若找不到返回-1

str1 = "this is string example....wow!!!" 
str2 = "exam" 
print(str1.find(str2))   # 15 
print(str1.find(str2, 10)) # 15 
print(str1.find(str2, 40)) # -1

(2)复杂的匹配,就需要用到正则表达式。

mydate='11/27/2016' 
import re 
if re.match(r'\d+/\d+/\d+',mydate): 
  print('ok.match') 
else: 
  print('not match') 
 
>>>ok.match

6.统计字符串里某个字符出现的次数

str = "thing example....wow!!!" 
print(str.count('i', 0, 5)) # 1 
print(str.count('e')) # 2

7.字符串的替换

(1)普通的替换,用replace方法就可以了

text='python is an easy to learn,powerful programming language.' 
print(text.replace('learn','study')) 
>>>python is an easy to study,powerful programming language.

(2)复杂的替换,需要用到re模块的sub函数

students='Boy 103,girl 105' 
import re 
print(re.sub(r'\d+','100',students)) 
>>>Boy 100,girl 100

8.去掉字符串中一些特定的字符

(1)去空格,对文本处理的时候比如从文件中读取一行,然后需要去除每一行的空格、table或者是换行符。

str = ' python str ' 
print(str) 
# 去首尾空格 
print(str.strip()) 
# 去左侧空格 
print(str.lstrip()) 
# 去右侧空格 
print(str.rstrip())

(2)复杂的文本清理,可以利用str.translate。

比如先构建一个转换表,table是一个翻译表,表示把“to”转成大写的“TO”,然后在old_str里面去掉‘12345',然后剩下的字符串再经过table翻译。

instr = 'to' 
outstr = 'TO' 
old_str = 'Hello world , welcome to use Python. 123456' 
remove = '12345' 
table = str.maketrans(instr,outstr,remove) 
new_str = old_str.translate(table) 
print(new_str) 
>>>HellO wOrld , welcOme TO use PyThOn. 6

总结

平时我们使用Python都是处理一些脚本,其中使用频率最大的就是字符串的处理方面,因此给大家整理了这些常用的字符串处理时使用的方法,希望对大家有用。

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

Python 相关文章推荐
用Pygal绘制直方图代码示例
Dec 07 Python
Python 支付整合开发包的实现
Jan 23 Python
使用Python实现文字转语音并生成wav文件的例子
Aug 08 Python
python实现人工智能Ai抠图功能
Sep 05 Python
Python之Class&Object用法详解
Dec 25 Python
django3.02模板中的超链接配置实例代码
Feb 04 Python
Python中SQLite如何使用
May 27 Python
python爬虫实例之获取动漫截图
May 31 Python
Django实现随机图形验证码的示例
Oct 15 Python
python 从list中随机取值的方法
Nov 16 Python
用python开发一款操作MySQL的小工具
May 12 Python
如何使用PyCharm及常用配置详解
Jun 03 Python
python实现批量修改服务器密码的方法
Aug 13 #Python
基于python分析你的上网行为 看看你平时上网都在干嘛
Aug 13 #Python
Python实现微信翻译机器人的方法
Aug 13 #Python
python读写csv文件的方法
Aug 13 #Python
python根据多个文件名批量查找文件
Aug 13 #Python
详解django实现自定义manage命令的扩展
Aug 13 #Python
Python一键安装全部依赖包的方法
Aug 12 #Python
You might like
yii实现创建验证码实例解析
2014/07/31 PHP
PHP通过调用新浪API生成t.cn格式短网址链接的方法详解
2019/02/20 PHP
jquery库文件略庞大用纯js替换jquery的方法
2014/08/12 Javascript
javascript学习笔记(八)正则表达式
2014/10/08 Javascript
JQuery记住用户名密码实现下次自动登录功能
2015/04/27 Javascript
jquery正则表达式验证(手机号、身份证号、中文名称)
2015/12/31 Javascript
javascript断点调试心得分享
2016/04/23 Javascript
Vue组件BootPage实现简单的分页功能
2016/09/12 Javascript
js oncontextmenu事件使用详解
2017/03/25 Javascript
Ext JS 实现建议词模糊动态搜索功能
2017/05/13 Javascript
jQuery实现所有验证通过方可提交的表单验证
2017/11/21 jQuery
vue中element组件样式修改无效的解决方法
2018/02/03 Javascript
Vue+webpack+Element 兼容问题总结(小结)
2018/08/16 Javascript
微信JS-SDK updateAppMessageShareData安卓不能自定义分享详解
2019/03/29 Javascript
node删除、复制文件或文件夹示例代码
2019/08/13 Javascript
js实现双人五子棋小游戏
2020/05/28 Javascript
vue中如何自定义右键菜单详解
2020/12/08 Vue.js
python字典多条件排序方法实例
2014/06/30 Python
使用Python操作excel文件的实例代码
2017/10/15 Python
python 编写简单网页服务器的实例
2018/06/01 Python
python爬虫之快速对js内容进行破解
2019/07/09 Python
基于pygame实现童年掌机打砖块游戏
2020/02/25 Python
python如何修改文件时间属性
2021/02/05 Python
Html5页面在微信端的分享的实现方法
2018/08/30 HTML / CSS
购买大码女装:Lane Bryant
2016/09/07 全球购物
怎样在程序里获得一个空指针
2015/01/24 面试题
会计助理的岗位职责
2013/11/29 职场文书
行政人员工作职责
2013/12/05 职场文书
小学门卫岗位职责
2013/12/17 职场文书
淘宝客服工作职责
2014/07/11 职场文书
党员对照检查材料思想汇报(党的群众路线)
2014/09/24 职场文书
护理见习报告范文
2014/11/03 职场文书
行风评议整改报告
2014/11/06 职场文书
孝女彩金观后感
2015/06/10 职场文书
女性健康知识讲座主持词
2015/07/04 职场文书
《鸡兔同笼》教学反思
2016/02/19 职场文书