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

yipeiwu_com6年前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设计】。

相关文章

wxpython实现图书管理系统

wxpython实现图书管理系统

用wxpython实现的简单图书管理系统,可以实现增加图书,删除图书,修改图书,查看图书。后台数据库为mysql数据库,采用的pymysql连接数据库。系统界面如下: 代码如下: 1....

numpy中矩阵合并的实例

python中科学计算包numpy中矩阵的合并,需要用到如下两个函数: 列合并:np.column_stack() ,其中函数参数为一个tuple 行合并:np.row_stack(),...

matplotlib实现热成像图colorbar和极坐标图的方法

matplotlib实现热成像图colorbar和极坐标图的方法

热成像图 %matplotlib inline from matplotlib import pyplot as plt import numpy as np def f(x,...

Python实现的多进程拷贝文件并显示百分比功能示例

本文实例讲述了Python实现的多进程拷贝文件并显示百分比功能。分享给大家供大家参考,具体如下: centos7下查看cup核数: # 总核数 = 物理CPU个数 X 每颗物理CPU...

Python设计模式之备忘录模式原理与用法详解

Python设计模式之备忘录模式原理与用法详解

本文实例讲述了Python设计模式之备忘录模式原理与用法。分享给大家供大家参考,具体如下: 备忘录模式(Memento Pattern):不破坏封装性的前提下捕获一个对象的内部状态,并在...