python判断字符在某个字符串中出现了多少次

前言

最近用python做了很多文件类读写的需求,需要对字符串操作比较熟悉,py对于这方面的类库封装得很完善,而且py作为一门优秀的脚本语言,用起来简单方便,只需要下个解释器就可以跑语法了。
言归正传,今天的主题是“判断字符在字符串中出现多少次”,可能有的朋友想的是for循环遍历检测每个字符,其实遍历是最low的,或许又想了str有没有相关的api可以用,可能联想到str.find之类的,但是这样显然不能统计次数,而后我又想到了str.split操作,这倒给了我一个好的思路,后面我会介绍一下,后来百度看了下标准做法,然后结合一下自己的需求,整理了出来。

用lambda表达式去查找(较复杂,仅查单字符)

def checkStr(str_source,str_check):#str_source:源字符串;str_check:要检查字符
    return sum(map(lambda check:str_check.count(check),str_source))

print(checkStr('ababa','a'))#->3

用str.split去查找(较简单,可以多字符查询)

def checkStr1(str_source,str_check):#str_source:源字符串;str_check:要检查字符
    splits = str_source.split(str_check)#返回拆分数组
    return len(splits)-1#返回拆分次数-1

print(checkStr1('ababa','ba'))#->2
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值