如何在python中创建一个程序,用于打印字符串中单词的出现次数

时间:2018-05-07 00:59:01

标签: python frequency

我想创建一个代码来打印字符串中的单词频率,但是我确实做了一些问题。这是代码:

string=input("Enter your string: ")
string=string.split()
a=0
while(a<len(string)):
     print (string[a], "=", string.count(string[a]))
     a=a+1

一切都运行正常,但如果一个单词出现两次,它会说出这个词并在两个地方说出事件。我真的需要帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用set()删除字符串中的重复项,并且只遍历唯一字符串:

s=input("Enter your string: ")
s=s.split()

for i in set(s):
    print(i, "=", s.count(i)

或者,您可以使用collections.Counter()

from collections import Counter

s=input("Enter your string: ")
s=s.split()

for key, value in Counter(s).items():
    print(key, "=", value)