2017-09-19 7 views
0

ここに新しいPythonの学習者がいます。私のチュートリアルの指示に従って、望ましい出力形式を得る方法を理解しようとしています。基本的には、任意の文字(たとえば、asjndkfsdhfbhdbhssassasa82)を入力することになっています。このプログラムは、上位5つの最も頻繁な文字を計算することです。これまでのところ希望の結果を得ることができましたが、私の研究室の仕様に従って印刷することはできません。collections.Counterの出力を編集する

は今のところ、私の出力がある

(文字):(頻度)

(文字):(頻度)

(文字):(頻度)、(文字):(頻度)などのように表示するにはどうすればよいですか?

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) 

ご協力いただければ幸いです。

答えて

1

はこの1

作品
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)) 
+0

、おかげで多くのことをしてみてください! – Poji

関連する問題