尝试编写递归计算word在Python文本文件中出现次数的函数
尝试编写递归计算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_
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”是我的文本文件