Re: [問題] 計算名字list中開頭字母的人數

看板Python作者 (To littlepig with love)時間10年前 (2015/03/18 12:49), 10年前編輯推噓0(002)
留言2則, 2人參與, 最新討論串3/3 (看更多)
※ 引述《alair99 (I think home)》之銘言: : 比如說 Jack是J開頭 : Benson是B開頭 : 想計算list中個各字母開頭的人名有多少個 : 目前只想到用switch去寫, : 但是這需要寫26個case, : 請問有更簡單程式碼更短的寫法嗎? : 謝謝 Python 3 : from itertools import groupby namelist = [ 'Jack', 'Bob', 'Mary', 'John', 'Mandy', 'Bruce' ] for k,g in groupby(sorted(namelist), key = lambda n:n[0]): print("%s : %d" % (k, len(list(g)))) ============================================================== B : 2 J : 2 M : 2 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.243.145.196 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1426654168.A.6F6.html ※ 編輯: bigpigbigpig (111.243.145.196), 03/18/2015 12:50:11

03/20 17:05, , 1F
厲害 沒想到還能這樣用 XD
03/20 17:05, 1F

03/20 17:34, , 2F
這應該超慢的吧, 尤其如果 list 順序很亂
03/20 17:34, 2F
文章代碼(AID): #1L2GFORs (Python)
文章代碼(AID): #1L2GFORs (Python)