pythonの人名の最大統計

2413 ワード

質問:出力文字列に最も多く表示される名前
s = '''                                          
                                               
                                              
                                               
                                                 
                                                
                                                 
                                               
                                                
                                                  
                                                
                                                   
                                                
                                                 
                                               
                                                
                                               
                                       '''

実行コード:
s = '''                                          
                                               
                                              
                                               
                                                 
                                                
                                                 
                                               
                                                
                                                  
                                                
                                                   
                                                
                                                 
                                               
                                                
                                               
                                       '''
ls = s.split()
counts = {}
for i in ls:
    counts[i] = counts.get(i,0) + 1
'''
#        
items = list(counts.items())
items.sort(key=lambda x:x[1], reverse=True)
for i in range(1):
    word, c = items[0]
    print(word)
'''
#    
max_name, max_sum = "", 0
for j in counts:
    if counts[j] > max_sum:
        max_sum, max_name = counts[j], j
print(max_name)

まとめ:出力が最も多い方式は2つあり、1つはvalueの大きさに基づいて直接関数を利用してソートし、最先頭または最後のkeyを出力することであり、もう1つは各valueを直接比較し、比較後の最大に対応するkeyを変数で記録し、keyを出力することである.