1. 程式人生 > >python 獲取字串中出現次數最多的字母

python 獲取字串中出現次數最多的字母

獲取字串中出現次數最多的字母

       給定一個包含不同的英文字母和標點符號的文字,找出其中出現最多的字母,不區分大小寫,並返回一個小寫字母,若存在相同次數的字母,則返回字母表中最先出現的那個。

採用內建函式max

import string
class Solution:
    def getMostWord(self,wordstr):
        #將字串小寫化
        wordstr = wordstr.lower()
        #string.ascii_lowercase表示字母串'abcdef··z'
        return max(string.ascii_lowercase, key=wordstr.count)

#測試用例:
handler=Solution() print handler.getMostWord("Zsdfghjkal;;DDDAAA;;;;;''';lkjhgfda") >>> a

max/min函式: 直接跟序列會返回此序列的最大/最小值

max(iterable, key, default) :求迭代器的最大值
其中iterable 為一個可迭代物件,如list,str。
原理:max會遍歷這個迭代器,然後將迭代器的每一個返回值當做引數傳給key中的function (一般用lambda表示式定義) ,然後將function的執行結果傳給key,然後以key為標準進行大小的判斷。