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

yipeiwu_com5年前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产生Gnuplot绘图数据的方法

Python产生Gnuplot绘图数据的方法

gnuplot的绘图可以直接选取文件绘图,文件格式要求如下: x1 y1 x2 y2 ...... xn yn 在python中利用文件操作的write方法可以非常方便实现,在此记录一...

pymysql模块的操作实例

pymysql 模块! pymysql模块时一个第三方模块!需要下载: pymysql的基本使用: import pymysql conn = pymysql.connect(...

Python实现统计英文单词个数及字符串分割代码

Python实现统计英文单词个数及字符串分割代码

字符串分割 复制代码 代码如下: str="a|and|hello|||ab" alist = str.split('|') print alist 结果 复制代码 代码如下: st...

详解Python map函数及Python map()函数的用法

详解Python map函数及Python map()函数的用法

python map函数 map()函数 map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到...

python同时遍历数组的索引和值的实例

你想在迭代一个序列的同时跟踪正在被处理的元素索引。 获取索引 内置的 enumerate() 函数可以很好的解决这个问题: >>> my_list = ['a',...