假设我想知道不同民族的名字。用户输入名称直到输入-1,一旦输入-1,循环就会中断
一旦进入,然后我试图制表输出像这样的东西
姓名:约翰·麦克斯·琼
出现次数:4 1 2
发生率:20%10%30%
#!/usr/bin/python
names = ["John","Max","Joan"]
lst = []
while True:
lst = raw_input("What is your name?")
if lst == "-1":
break
input_list = lst.split()
print "Names" '[%s]' % ' '.join(map(str, names))
我不知道如何用用户输入的次数来增加名称的值——假设用户输入john,john,max,joan-joan-joan,那么我需要增加john两次,max一次,joan三次。你知道吗
我知道我可以使用[0]引用名称的不同部分,例如,它是第一项,但我不知道如何增加所有相关部分。你知道吗
您可以使用^{} 对给定输入中出现的名称进行计数和累加:
请注意,我假定输入中的名称用空格隔开。
计算多字串中的字频:
输出:
一个人是否将单词规范化为小写取决于问题域;如果发问者想用他收到的名字来做这件事,那就是循环中的
data[word.lower()] += 1
,然后如果他愿意的话,他可以在输出中重新大写第一个字母。你知道吗相关问题 更多 >
编程相关推荐