欢迎来到天天文库
浏览记录
ID:62453799
大小:390.24 KB
页数:12页
时间:2021-05-06
《Python中傻傻分不清的各种字符串处理方法.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、文档Python易混淆知识系列:Pandas字符串方法和字符串内建函数使用Python的一个优势就是字符串处理起来比较容易。Python的初学者在学习字符串内建函数的时候往往会很困惑:字符串的内建函数是对单个字符串对象处理,如果要对成千上万个字符串对象处理该怎么办?不少已经使用Python工作很长时间的同学,即使已经学会使用Pandas对象的.apply()方法来处理字符串,依然会时常忘记:其实Pandas已经自带功能强大的向量化字符串操作。即使知道Pandas字符串方法的同学,使用的时候也经常与字符串内建函
2、数混淆。而熟练使用Pandas字符串方法的同学往往会觉得,其方法的代码简洁性与运行效率都远高于其他的写法。真相到底如何?Pandas字符串方法和字符串内建函数有什么不同?运算效率真的像传闻那么高吗?今天我们就好好捋一下这块Python易混淆的知识点。1.快速入门向量化字符串操作初学Python字符串内建函数的同学肯定知道有个叫.lower()的方法可以将字符串中的大写英文字母转化为小写,比如将字符串对象’ABCD’转化为小写:如果字符型的Series对象中的字符串要转化为小写呢?比如:11/12文档此时,我们
3、就可以使用Series的str方法中的.lower()来处理:同理,如果要将Series对象中的所有的大写字母变成小写,可以使用.str.upper()。看到这里,相信很多没有使用过Pandas字符串方法的同学会惊奇地发现,这跟字符串对象的内建函数差不多呀?只不过多了一个通过.str()方法调用函数的过程。确实,大多数Pandas的字符串方法借鉴了Python字符串内建函数的内容,这里给大家梳理一下,两种处理字符串方法基本相同的地方:·求字符串长度§.str.len()·字符检索§.str.find()和.s
4、tr.rfind()§.str.index()和.str.rindex()11/12文档·字符转换§.str.lower()和.str.upper()§.str.title()和.str.capitalize()§.str.swapcase()·字符类型判断§.str.islower()和.str.isupper()§.str.isnumeric()、.str.isalnum()、.str.isdecimal()、.str.isalpha()、.str.isdigit()§.str.isspace()§.st
5、r.istitle()·字符对齐与填充§.str.startswith()和.str.endswith()§.str.center()§.str.ljust()和.str.rjust()·字符分隔§.str.split()和.str.rsplit()§.str.partition()和.str.rpartition()·字符整理§.str.strip()、.str.rstrip()、.str.lstrip()以上方法都是Pandas字符串方法与Python字符串内建函数中基本一致的部分,无论是方法名还是调用过
6、程,只有少部分有少许区别。11/12文档1.其他字符串方法除了与字符串内建函数类似的方法以外,Pandas还有一些功能强大的字符串方法。(1)向量化字符串的取值和切片操作很多同学会很疑惑,字符串对象可以进行取值和切片操作,但是Pandas对象中的字符串如何进行相同的操作?比如以上面的Series对象为例:11/12文档如果想把上面Series对象中所有字符串中的前三个字母取出来,可以通过调用.str属性后,返回的对象直接使用和字符串切片一样的方法:此外还可以使用.str.slice()方法,其参数与切片方法的
7、类似:但是如果想根据字符串索引来取单个字符元素,可以通过.str.get()方法来进行。比如上面的Series对象a中,我们想要取里面所有字符串索引值为1的元素,可以写a.str.get(1):(1)字符串拼接Python中多个字符串对象拼接非常简单,直接使用加法运算符就可以了,比如:11/12文档这种便捷的方法,Series对象也同样沿用下来,可以将多个字符型Series对象用加法运算符直接相加:但是Pandas字符串方法中有更加强大的字符串拼接功能,那就是.str.cat()方法。实现上面同样的字符串拼接
8、,如果我们使用.str.cat()方法,可以这样写:也就是说,第一个Series对象调用.str.cat()方法,该方法第一个参数可以用列表的形式来把其他需要合并的Series对象写进来。当然,.str.cat()方法功能强大,比如可以选择使用参数sep来自定义分隔符来合并,我们使用“
9、”来连接上面的三个Series对象:11/12文档(1)字符替换操作字符串内建函数有便捷的字符替换方法.repla
此文档下载收益归作者所有