我正在为我的工作学习 python,以便能够操作统计数据。我已经了解 C# 和 javascript,并且可以使用这些语言解决这个问题,但是我很难将解决方案翻译成 python。
问题 计算 .txt 文件中所有唯一的四个字母单词。任何带有撇号的单词都应该被忽略。忽略单词的大小写(即Tool和tool应该只算一个单词)。打印出(以便用户可以看到)唯一的四个字母单词的数量。
根据单词的最后两个字母(单词结尾)划分四个字母的单词。数一数这些词尾你有多少个单词。
打印出一个词尾列表和你为每个词尾找到的词数。
我在下面的 Javascript 中解决了这个问题:
var listOfWords = ['card','alma','soon','bard','moon','dare'];
var groupings = {};
for(var i = 0; i < listOfWords.length; i++);
{
var ending = listOfWords[i].substring(2,4)
if(groupings[ending] === undefined)
{
groupings[ending] = {}
groupings[ending].words = []
groupings[ending].count = 0
}
groupings[ending].words.push(listOfWords[i])
groupings[ending].count++
};
console.debug(groupings);
这是我到目前为止在 python 中的内容:
import re
text = open("words.txt")
regex = re.compile(r'\b\w{4}\b')
allFours = []
groupings = []
for line in text:
four_letter_words = regex.findall(line)
for word in four_letter_words:
allFours.append(word)
mylist = list(dict.fromkeys(allFours))
uniqueWordCount = len(mylist)
print(uniqueWordCount)
for i = 0; i < mylist.length; i++:
var ending = mylist[i]
我希望我已经清楚地解释了所有问题。非常感谢所有帮助,谢谢。
心有法竹
相关分类