小白使用Python语言进行NLP常用字符串操作函数&对特定情况的处理技巧

本文总结了小白使用Python进行NLP时的字符串、列表操作函数及异常处理技巧,包括str.find(), str.count(), str.strip(), str.replace(), str.split(), list.remove(), sorted(), collections.Counter()等,并分享了处理标点错误、多余换行符的方法。" 104826844,9364391,Python面向对象编程详解,"['Python', '面向对象编程', '设计模式']
摘要由CSDN通过智能技术生成

小白使用Python语言进行NLP常用字符串、列表操作函数&对常见异常情况的处理技巧##

本文内容主要总结了本小白参加绿色计算大赛进行文本处理工作的收获,主要是为了方便日后进行类似工作用于参考。大佬可以绕道走,不喜勿喷,欢迎斧正

字符串操作函数

1. str. find(substr,begin=0,end=len(str))
当在母串(str)中匹配到第一个子串(substr)后返回该子串中首个字符在str中的索引值,若查找不到substr返回-1。

示例:

test="abcdabcd"
print(test.find("abcd"))
print(test.find("acbd"))
#输出
0
1

3. str.count(substr, start= 0,end=len(str))
返回在母串(str)中子串(substr)一共出现的次数。要注意的是,若子串前、后有重复部分,计数时不会重复统计。

示例:

test="aaaaaa"
print(test.count("a"))
print(test.count("aa"))
#输出
6
3

5. str.strip(substr)
返回去除母串str首尾处所有子串substr后剩余的字符串(会在内部递归进行,直至得到的结果首尾不再存在substr为之)。
注意只可以去除首尾部分的字符/字符串,不能够删除中间的字符/字符串。

示例:

test="abab1234ab"
print(test.strip("ab"))
#输出
1234

7. str.replace(old_substr,new_substr,max_times)
返回将母串str中最多max_times个old_sunstr替换为new_substr后的字符串(若未传入max_times,则默认全部替换)。
若存在替换次数的限制, replace函数使用时应定义max_times,否则特殊数据出现多次替换会报错,浪费调试时间。

示例:

test="abab1234ab"
print(test.replace('ab','h',2))
#输出
hh1234ab

8. str.split(sub="",num=-1)
我对于该函数的理解是:在母串str中匹配子串sub,匹配到以后删除该子串并将母串在此分割开。该函数返回一个列表,列表中保存str分割后剩余的部分。num表示匹配到子串的个数,也同时表示将母串分割为num+1部分。(num=-1表示默认在所有sub出现的地方进行分割)

示例:

test="1ab1cd1ef1"
print("默认分割所有",test.split("1"))
print("只分割两次",test.split("1",2))
#输出
默认分割所有 ['', 'ab', 'cd', 'ef', '']
只分割两次 ['', 'ab', 'cd1ef1']

列表操作

1.list.remove(obj)
该函数在list对象自身中移除指定的一项obj。注意:当list中不包含传入的obj时会报错;该函数没有返回值(None)。注:不要在for循环遍历列表的同时在循环内使用remove操作,这样会导致遍历不完整!!

示例:

test=["a","b","c"]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值