看板 Python 關於我們 聯絡資訊
各位高手好 小的python苦手這個問題困擾兩天了 想跟大家請教一下 現有 dict1= {'quiet':[123, 231, 68, 68, 68, 107, 107], 'more': :[3, 3, 82, 82, 146, 146, 95], ...} 想改成為計算每一key中value的次數(頻率) dict2= {'quiet':[123:1, 231:1, 68:3, 107:2], 'more': :[3:2, 82:2, 146:2, 95:1], ...} 試過Counter(value) for key, value in dict1.items(): print(key, Counter(value)) 但只會列印出來 卡在不知道怎麼把這個變成dict 請教大家怎麼改寫這一段或者有其他方式完成嗎?謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 31.205.236.119 (英國) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1616138121.A.FE3.html ※ 編輯: demon333 (31.205.236.119 英國), 03/19/2021 15:17:55 ※ 編輯: demon333 (31.205.236.119 英國), 03/19/2021 15:19:05
robert09080: 首先 list.count(x) 可以計算出現次數。那麼以dic 03/19 15:34
robert09080: t1[“quiet”]為範例,只要將 set1=set(dict1[“q 03/19 15:34
robert09080: uiet”]),即可做出unique的dict1[“quiet”],再 03/19 15:34
robert09080: 以for i in set1: dict1[“quiet”].count(i),即 03/19 15:34
robert09080: 可取得出現次數,以你要的型態放置變數裡。 03/19 15:34
s0914714: 把key跟Counter(value)放到dict就好了阿 還是我誤會了? 03/19 16:27
tzouandy2818: 啊你用print 當然只會印出來啊 03/19 17:48
supremebboy: 外面宣告空的dict 把你要的東西裝進去啊 只有print 03/19 18:49
supremebboy: 是得不到你要的 03/19 18:49
demon333: 謝謝大家我想請問的就是怎麼宣告dict然後擺進去T口T 03/19 20:02
demon333: 寫出來了謝謝大家提點! 03/19 20:08