在 Python 中编辑 collections.Counter 的输出
Editing output of collections.Counter in Python
这里是新 Python 学习者,我正在尝试弄清楚如何按照我的教程规范中的说明获得所需的输出格式。基本上我要键入任何字符(例如 asjndkfsdhfbhdbhssassasa82),程序将计算前 5 个最常见的字符。到目前为止,我能够得到想要的结果,但是我无法根据我的实验室规格打印它。
目前,我的输出是
(字符):(频率)
(字符):(频率)
.
.
.
如何让它显示为(字符):(频率),(字符):(频率)等?
import sys
import collections
charInput = sys.argv[1].lower()
charInputTemp = list(charInput) #Convert entire string into individual characters
charInputArray = []
for char in charInput:
charInputArray.append(char) #Add each character to array for sorting
charInputArray.sort()
letters = collections.Counter(charInputArray) #Get number of occurrence of a character
for letter, count in letters.most_common(5): #Get 5 most frequent character
print '%s:%d' % (letter, count)
如有任何帮助,我们将不胜感激!
试试这个
import sys
import collections
charInput = sys.argv[1].lower()
charInputTemp = list(charInput) #Convert entire string into individual characters
charInputArray = []
for char in charInput:
charInputArray.append(char) #Add each character to array for sorting
charInputArray.sort()
letters = collections.Counter(charInputArray) #Get number of occurrence of a character
output = []
for letter, count in letters.most_common(5): #Get 5 most frequent character
output.append(str(letter)+":"+str(count))
print (",".join(output))
这里是新 Python 学习者,我正在尝试弄清楚如何按照我的教程规范中的说明获得所需的输出格式。基本上我要键入任何字符(例如 asjndkfsdhfbhdbhssassasa82),程序将计算前 5 个最常见的字符。到目前为止,我能够得到想要的结果,但是我无法根据我的实验室规格打印它。
目前,我的输出是
(字符):(频率)
(字符):(频率)
.
.
.
如何让它显示为(字符):(频率),(字符):(频率)等?
import sys
import collections
charInput = sys.argv[1].lower()
charInputTemp = list(charInput) #Convert entire string into individual characters
charInputArray = []
for char in charInput:
charInputArray.append(char) #Add each character to array for sorting
charInputArray.sort()
letters = collections.Counter(charInputArray) #Get number of occurrence of a character
for letter, count in letters.most_common(5): #Get 5 most frequent character
print '%s:%d' % (letter, count)
如有任何帮助,我们将不胜感激!
试试这个
import sys
import collections
charInput = sys.argv[1].lower()
charInputTemp = list(charInput) #Convert entire string into individual characters
charInputArray = []
for char in charInput:
charInputArray.append(char) #Add each character to array for sorting
charInputArray.sort()
letters = collections.Counter(charInputArray) #Get number of occurrence of a character
output = []
for letter, count in letters.most_common(5): #Get 5 most frequent character
output.append(str(letter)+":"+str(count))
print (",".join(output))