使用python对文件中的数值进行累加的实例

yipeiwu_com7年前Python基础

问题描述:

一个文件由若干条记录组成,记录的格式为:“num1 num2”,有时候,需要统计文件中num1对应的num2的总值。

处理问题的思路

用传说中的python来处理,很方便。几行代码就可以了。

处理思路:

1:首先定义一个字典,用于存储最终的结果,这是因为字典中的key是唯一的特性。

2:打开文件,按行读取,将每一行的num1当做key,num2当做value。

3:判断字典中是否存在key,如果存在,获取对应的原始值,然后删除对应的key

4:将原始值和记录中的值相加之和,保存到字典中

5:打印字典,就可以看到结果了。

代码如下:

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)

同理,如果统计出现的次数,可以把上面的value设置成1即可。

以上这篇使用python对文件中的数值进行累加的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

给你选择Python语言实现机器学习算法的三大理由

给你选择Python语言实现机器学习算法的三大理由

基于以下三个原因,我们选择Python作为实现机器学习算法的编程语言:(1) Python的语法清晰;(2) 易于操作纯文本文件;(3) 使用广泛,存在大量的开发文档。 可执行伪代码 P...

python计算一个序列的平均值的方法

本文实例讲述了python计算一个序列的平均值的方法。分享给大家供大家参考。具体如下: def average(seq, total=0.0): num = 0 for...

Python使用正则表达式实现文本替换的方法

本文实例讲述了Python使用正则表达式实现文本替换的方法。分享给大家供大家参考,具体如下: 2D客户端编程从某种意义上来讲就是素材组织,所以,图片素材组织经常需要批量处理,python...

Python列表list排列组合操作示例

本文实例讲述了Python列表list排列组合操作。分享给大家供大家参考,具体如下: 排列 例如: 输入为 ['1','2','3']和3 输出为 ['111','112','11...

python调用webservice接口的实现

python调用webservice接口的实现

使用suds这个第三方模块 from suds.client import Client url = 'http://ip:port/?wsdl' cilent=Client...