用Python對文件中數(shù)值進(jìn)行累加的方法?這個問題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!
目前成都創(chuàng)新互聯(lián)公司已為近千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站托管運(yùn)營、企業(yè)網(wǎng)站設(shè)計(jì)、鄂托克網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。1.問題描述:
一個文件由若干條記錄組成,記錄的格式為:“num1 num2”,有時候,需要統(tǒng)計(jì)文件中num1對應(yīng)的num2的總值。
2.處理問題的思路
用傳說中的python來處理,很方便。幾行代碼就可以了。
3.處理思路:
1:首先定義一個字典,用于存儲最終的結(jié)果,這是因?yàn)樽值渲械膋ey是唯一的特性。
2:打開文件,按行讀取,將每一行的num1當(dāng)做key,num2當(dāng)做value。
3:判斷字典中是否存在key,如果存在,獲取對應(yīng)的原始值,然后刪除對應(yīng)的key
4:將原始值和記錄中的值相加之和,保存到字典中
5:打印字典,就可以看到結(jié)果了。
代碼如下:
stat={} with open("rg_amount.txt") as file: for line in file: list_line = line.strip().split() key=list_line[0] value=list_line[1] oldValue=0 if(stat.has_key(key)): oldValue=stat[key] del(stat[key]) stat[key]=int(oldValue)+int(value) print(stat)
同理,如果統(tǒng)計(jì)出現(xiàn)的次數(shù),可以把上面的value設(shè)置成1即可。
感謝各位的閱讀!看完上述內(nèi)容,你們對用Python對文件中數(shù)值進(jìn)行累加的方法大概了解了嗎?希望文章內(nèi)容對大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)網(wǎng)站設(shè)計(jì)公司行業(yè)資訊頻道。