python - How do I return the earliest letter in the alphabet from a choice of letters? -


i doing exercise requires me return frequent letter in string of letters. in event there 2 letters appear same frequency, 'tiebreaker' whichever appears first in alphabet. example:

'aaaabbbb' #should return a. 

my code return letter below. recognize may not efficient. i'll worry later.

def mostwantedletter(text):     text = text.lower()     mwl = {}     letter in text:         if letter not in mwl:             mwl[letter] = 1         else:             mwl[letter] += 1      letter in sorted(mwl, key = mwl.get, reverse = true):         if letter.isalpha():             #letter = sorted(list(letter))             return letter      #[0] 

thank stack overflow community in getting me far!

def mostwantedletter(text):     # count how many times each letter occurs     mwl = {}     ch in text.lower():         if ch.isalpha():             mwl[ch] = mwl.get(ch, 0) + 1      # ordered descending count (highest first) ascending letter     least = min(mwl.items(), key=lambda x:(-x[1], x[0]))      # return letter least item     return least[0] 

Comments

Popular posts from this blog

php - SPIP: From Tag directly to an article -

jquery - isAjaxRequest always return false -

ruby on rails - In a controller spec, how to find a specific tag in the generated view? -