Ich versuche, eine Funktion zu schreiben, die eine Zeichenfolge Text und eine positive Ganzzahl n und konvertiert Text in eine Liste von Wörtern. Es muss eine Liste von Wörtern zurückgeben und n oder öfter in Text auftreten. Ich versuche, ein Wörterbuch zu benutzen, um diese Aufgabe zu erfüllen.Wie gibt man eine Liste von Wörtern zurück, die n oder mehrmals in einem Text vorkommen?
Was ich zurück will, ist in der folgenden:
>>> repeat_word_count("buffalo buffalo buffalo buffalo", 2)
['buffalo']
>>> repeat_word_count("one one was a racehorse two two was one too", 3)
['one']
>>> repeat_word_count("how much wood could a wood chuck chuck", 1)
['a', 'chuck', 'could', 'how', 'much', 'wood']
Ich habe ein Wörterbuch wurde mit zählen, wie oft jedes Wort im Text vorkommt. Das ist, was ich habe, so weit:
def repeat_word_count(text, n):
my_string = text.split()
my_dict = {}
for word in my_string:
if word in my_dict:
my_dict[word] += 1
else:
my_dict[word] = 1
for key, value in my_dict.items():
if value >= n:
return sorted(my_dict.keys())
Ich weiß, dass die zweite ‚für‘ Schleife nicht korrekt ist, aber ich weiß nicht, wie zu überprüfen, ob die Werte von my_dict sind größer oder gleich n. Bis jetzt funktioniert mein Code nicht so gut. Jede Hilfe wäre großartig.