【发布时间】:2017-05-23 07:37:41
【问题描述】:
嗨,所以我有 2 个文本文件,我必须阅读第一个文本文件,计算每个单词的频率并删除重复项,并创建一个包含单词及其在文件中的计数的列表。
我的第二个文本文件包含关键字,我需要计算这些关键字在第一个文本文件中出现的频率,并在不使用任何导入、dict 或 zip 的情况下返回结果。
我被困在如何进行第二部分我打开文件并删除了标点符号等,但我不知道如何找到频率
我玩弄了.find() 的想法,但目前还没有运气。
任何建议将不胜感激,这是我目前的代码似乎在关键字文件中找到关键字的频率,但在第一个文本文件中没有找到
def calculateFrequenciesTest(aString):
listKeywords= aString
listSize = len(listKeywords)
keywordCountList = []
while listSize > 0:
targetWord = listKeywords [0]
count =0
for i in range(0,listSize):
if targetWord == listKeywords [i]:
count = count +1
wordAndCount = []
wordAndCount.append(targetWord)
wordAndCount.append(count)
keywordCountList.append(wordAndCount)
for i in range (0,count):
listKeywords.remove(targetWord)
listSize = len(listKeywords)
sortedFrequencyList = readKeywords(keywordCountList)
return keywordCountList;
编辑-目前正在考虑再次重新打开我的第一个文件的想法,但这次没有将其变成列表?我认为我的错误以某种方式来自它计算我的列表列表的频率。这些是我得到的结果类型
[[['the', 66], 1], [['of', 32], 1], [['and', 27], 1], [['a', 23], 1], [['i', 23], 1]]
【问题讨论】:
-
您可以做的是,遍历您的每个关键字,如果该关键字存在于您的
frequency list中,则只需在该索引处增加它。 -
这基本上是我想做的,但我尝试了几种不同的方法,但没有成功:s
标签: python python-3.x jes