我的代码应该能找到文本中单词的出现。出于某种原因,在使用此功能之后,将从此特定文本won't work中读取方法(.readlines()方法为空列表,.read()为空)。代码是:
def counter(new):
words = dict()
lines=new.readlines()
for line in lines:
text=line.split()
for word in text:
if word not in words:
words[word]=1
else: words[word]+=1
return [tuple(x) for x in words.items()]
我没有发现任何可能导致此错误的错误。
答案 0 :(得分:2)
我假设new
是调用open(..)
的结果,它应该是您要传递给函数的文件句柄。调用readlines()
会使它耗尽,因此尝试使用相同的句柄从文件中读取将不起作用。要么打开一个新的句柄,要么可以调用new.seek(0)
(比打开一个全新的句柄更好的选择-尽管在某些情况下会再次返回相同的句柄,但在这里不要深入探讨)将索引移到文件的开头。