龙空技术网

57个挑战-46python实现,搜索文字并输出出现次数

飞霜luke 446

前言:

眼前大家对“python查找关键字的次数”都比较关注,兄弟们都想要了解一些“python查找关键字的次数”的相关资讯。那么小编在网络上收集了一些关于“python查找关键字的次数””的相关知识,希望兄弟们能喜欢,咱们快快来了解一下吧!

题目如下:

代码如下:

#正则表达式具体参考这里: \w   匹配数字字母下划线import redef get_input():    with open("words.txt",'r') as f:        listx = f.readlines()    return listxdef transfer_to_fulllist(listx):    lista = []    listb = []    for string in listx:        lista = re.findall(r'\w+\b',string)        listb = lista + listb    return listbdef transfer_to_singlelist(listb):    listorder = set()    for i in listb:        listorder.add(i)    listorder2=list(listorder)    return listorder2def transfer_to_dic(listorder,listb):    dic1 ={}    for i in range(len(listorder)):        dic1[listorder[i]]=1        for j in range(len(listb)):            if listorder[i] == listb[j]:                dic1[listorder[i]]= dic1[listorder[i]] + 1    return dic1def dictionairy(dic1):    # 声明字典    key_value = dic1    print("字典 {0}".format(key_value))    print("转成数组了  {0}".format(key_value.items()))    for kv in key_value.items():        print("{0} + {1}".format(kv[1],kv[0]))    print("按值(value)排序:")    print(sorted(key_value.items(), key=lambda kv: (kv[1], kv[0])))    return sorted(key_value.items(), key=lambda kv: (kv[1], kv[0]))def display(listc):    for i in listc:        print("{0}: {1}".format(i[0],'*'*i[1]))if __name__ == '__main__':    listx = get_input()    listb = transfer_to_fulllist(listx)    print(listb)    listorder = transfer_to_singlelist(listb)    print(listorder)    dic1=transfer_to_dic(listorder,listb)    print(dic1)    listc=dictionairy(dic1)    display(listc)

运行效果如下:红圈部分,其它为debug 用的内容。

明天具体解释下实现的逻辑和细节。

标签: #python查找关键字的次数