使用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设计】。

相关文章

用Python实现二叉树、二叉树非递归遍历及绘制的例子

用Python实现二叉树、二叉树非递归遍历及绘制的例子

前言 关于二叉树的实现与遍历,网上已经有很多文章了,包括C, C++以及JAVA等。鉴于python做为脚本语言的简洁性,这里写一篇小文章用python实现二叉树,帮助一些对数据结构不太...

python中urllib.unquote乱码的原因与解决方法

发现问题 Python中的urllib模块用来处理url相关的操作,unquote方法对应javascript中的urldecode方法,它对url进行解码,把类似"%xx"的字符替换成...

Python实现隐马尔可夫模型的前向后向算法的示例代码

本篇文章对隐马尔可夫模型的前向和后向算法进行了Python实现,并且每种算法都给出了循环和递归两种方式的实现。 前向算法Python实现 循环方式 import numpy as...

python subprocess 杀掉全部派生的子进程方法

下面就是今天下午的研究成果。 发布系统需要响应用户的中断请求,需要在GET方法中杀掉由subprocess派生的子进程,刚开始直接用os.kill 发现子进程的子进程无法kill,谷歌了...

python 同时运行多个程序的实例

start many programs execfile('C:/Dokumente und Einstellungen/schnei17/Desktop/python/zeit/1...