如何编写出出现的次数

img

l = ['刘备', '诸葛亮', '关羽']
s = """刘备等三人终于见到诸葛亮,并听取诸葛亮“三分天下"建议。,它又可以分成三部分。第一部分,从“竹林青翠,溪流涂凉,刘备、关羽、张飞三人骑马第三次来到诸葛庐前,迎面见诸葛均走来"至 """

for _ in l:
    print("<{}>出现的次数:{}".format(_, s.count(_)))

  1. 最快的办法:使用正则表达式来匹配
    例子:
import re
cnt_liubei = len(re.findall("刘备",raw_text))

raw_text是原文

  1. 不使用正则的办法:从前往后找
start=0
cnt=0
while(start<len(raw_text)):
    if(raw_text.find("刘备",start,len(raw_text))>=0):
        cnt+=1
        start=raw_text.find("刘备",start,len(raw_text))+1
    else:
        break

```