尝试编写递归计算word在Python文本文件中出现次数的函数

尝试编写递归计算word在Python文本文件中出现次数的函数,python,Python,尝试编写递归计算word在Python文本文件中出现次数的函数 def word_count(filename, word): with open('C:/Users/Ibrahim/Desktop/file.txt', 'r') as f: result_list = [x.split(',') for x in f.readlines()] for i in result_list: if i == word: return word_

尝试编写递归计算word在Python文本文件中出现次数的函数

def word_count(filename, word):
with open('C:/Users/Ibrahim/Desktop/file.txt', 'r') as f:
    result_list = [x.split(',') for x in f.readlines()]
    for i in result_list:
        if i == word:
            return word_count(filename,word)

是我目前拥有的。

柜台
是您在这里的朋友,即:

from collections import Counter
f = open('yourfile.txt', 'r')
counts = Counter(f.read().split())
print counts
要检查特定单词是否存在,请执行以下操作:

if "myword" in counts:
    print "exists"
要获取特定的字数计数值,请使用:

print counts.get('myword')
# or simply
print counts['myword']

注:


计数器
只是一个
dict
子类,支持所有dict运算符和方法。

我认为它可能对您有所帮助:

import sys, re


def word_count(filename, niddle, splitter=","):
    regex_pattern = '|'.join(map(re.escape, splitter))
    with open(filename, 'r') as f:
        words = [ word  for line in f.read().splitlines() for word in re.split(regex_pattern, line)]

    words = filter(None, words)
    print "Total Words :", len(words)
    print "Searching %s in list" % niddle
    print "Total Occurance : %d" % words.count(niddle)


def main(argv):
    splitter = ","

    if len(argv)==3:
        filename, word, splitter = argv
    elif len(argv)==2:
        filename, word = argv
        splitter = splitter
    else:
        print "Usage : word_count.py <file> <word> <splitter>"
        sys.exit()

    word_count(filename, word, splitter)


if __name__ == "__main__":
    main(sys.argv[1:])
导入系统,重新
def word_计数(文件名,niddle,splitter=“,”):
regex_pattern='|'.join(映射(转义,拆分))
将open(filename,'r')作为f:
words=[f.read()中的逐字逐行,re.splitlines()中的逐字逐行(regex_模式,行)]
单词=过滤器(无,单词)
打印“总字数:”,len(字数)
打印“正在列表“%n”中搜索%s”
打印“总发生率:%d”%words.count(niddle)
def总管(argv):
拆分器=“,”
如果len(argv)==3:
文件名、字、拆分器=argv
elif len(argv)==2:
文件名,word=argv
拆分器=拆分器
其他:
打印“用法:word_count.py”
sys.exit()
字数(文件名、字数、拆分器)
如果名称=“\uuuuu main\uuuuuuuu”:
main(sys.argv[1:])

使用计数器,一个内置模块…你能分享你的txt文件预览吗?几件事:1。每个递归函数都必须有终止条件。你没有。2.你似乎没有在任何地方记录单词匹配的数量。3.用open(…)从
中调用
wordcount
意味着每次调用函数时,都有一个打开的文件描述符。“hello”是我的文本文件