看板 Python 關於我們 聯絡資訊
各位版友好, 有兩個疑問想向各位請教, 假如我要計算某個檔案理的資料出現的次數, 並把達到某些次數的資料存到新的文件中, 該怎麼達成呢? test.txt內容如下: 1-2 3-2 5-1 4-3 6-7 1-6 5-8 2-9 2-10 5-10 以上資料統計出(資料:出現次數): 1:3 2:4 3:2 4:1 5:3 6:2 7:1 8:1 9:1 10:2 第一個問題: 計算次數的部分可以透過把資料丟進list的方式計算次數, 請問有其他更有效率的方法嗎? 第二個問題: 要將出現3次以上的原始資料記錄在新的檔案中, 則記錄以下資料在new_test.txt中: 1-2 2-9 2-10 3-2 5-1 5-8 請問這部分該怎麼做呢? 麻煩各位指點我,謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.166.81.166 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1441612705.A.068.html
tiefblau: 第一個問題 用dict 09/07 16:26
tiefblau: 看不懂你第二個問題在做啥 2出現四次 為啥2-9, 2-10都 09/07 16:29
tiefblau: 沒出現在new_test裡面 09/07 16:30
抱歉,我忘記填入2-9跟2-10, 已修改!! ※ 編輯: Dong0129 (118.166.81.166), 09/07/2015 16:41:53
uranusjr: collections.Counter(open('test.txt')) 直接搞定 09/07 18:01
uranusjr: 不過如果要配合第二部分的話就只能用 dict 自己做了 09/07 18:01
uranusjr: 第一行的 open 後面忘了加 .read() 09/07 18:02