目的:查找文本中还有Sum/Avg的行中低三个竖线后第一个浮点数

思路:先使用python读取文本中一行,然后切割字符串。查找含有Sum/Avgkeyword的行。取出想要的结果

文本局部:

........

| msop0  |    8    326 | 99.4    0.3    0.3    0.3    0.9   25.0 |   -0.383    |

|--------+-------------+-----------------------------------------+-------------|

| mspe0  |    8    394 |100.0    0.0    0.0    0.0    0.0    0.0 |-2147483.648 |

|--------+-------------+-----------------------------------------+-------------|

| muor0  |    8    458 |100.0    0.0    0.0    0.0    0.0    0.0 |-2147483.648 |

|--------+-------------+-----------------------------------------+-------------|

| mvxz0  |    8    435 | 99.8    0.0    0.2    0.2    0.5   25.0 |    0.419    |

|--------+-------------+-----------------------------------------+-------------|

| mwie0  |    8    376 |100.0    0.0    0.0    0.0    0.0    0.0 |-2147483.648 |

|==============================================================================|

| Sum/Avg|  224  11172 | 99.8    0.1    0.1    0.1    0.2    8.5 |   -0.089    |

|==============================================================================|

|  Mean  |  8.0  399.0 | 99.8    0.1    0.1    0.1    0.2    8.5 |-2147483.648 |

|  S.D.  |  0.0   35.4 |  0.2    0.1    0.2    0.1    0.3    9.0 |-2147483.648 |

| Median |  8.0  394.0 |100.0    0.0    0.0    0.0    0.2   12.5 |-2147483.648 |

`------------------------------------------------------------------------------'

測试程序例如以下:

>>> ss='| Sum/Avg|  224  11172 | 99.8    0.1    0.1    0.1    0.2    8.5 |   -0.089    |'
>>> ss
'| Sum/Avg| 224 11172 | 99.8 0.1 0.1 0.1 0.2 8.5 | -0.089 |'
>>> ss.split('|')
['', ' Sum/Avg', ' 224 11172 ', ' 99.8 0.1 0.1 0.1 0.2 8.5 ', ' -0.089 ', '']
>>> ss.split('|')[1] == ' Sum/Avg'
True
>>> ss.split('|')[3]
' 99.8 0.1 0.1 0.1 0.2 8.5 '
>>> ss.split('|')[3][0:5]
' 99.8'
>>> float(ss.split('|')[3][0:5])
99.8

參考程序:

f = open("ctm_39phn.filt.sys")             # 返回一个文件对象
line = f.readline() # 调用文件的 readline()方法
while line:
#print line, # 后面跟 ',' 将忽略换行符
if line.split('|')[1] == ' Sum/Avg':
print float(line.split('|')[3][0:5])
# print(line, end = '')   # 在 Python 3中使用
line = f.readline() f.close()

python解析文本文件演示样例的更多相关文章

  1. boost.python编译及演示样例

    欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/46781581 linux编译boost的链接:http://bl ...

  2. 使用 jackson 解析 json 演示样例

    首先须要下载3个包,下载地址在Github FasterXML,这三个核心模块各自是: Streaming ("jackson-core") defines low-level s ...

  3. 1000个经常使用的Python库和演示样例代码

    以下是programcreek.com通过分析大量开源码,提取出的最经常使用的python库. 1. sys    (4627) 2. os    (4088)  3. re    (3563)  4 ...

  4. 支付宝即时到帐接口的python实现,演示样例採用django框架

    因工作须要研究了支付宝即时到帐接口.并成功应用到站点上,把过程拿出来分享. 即时到帐仅仅是支付宝众多商家服务中的一个,表示客户付款,客户用支付宝付款.支付宝收到款项后,立即通知你,而且此笔款项与交易脱 ...

  5. [Python] SQLBuilder 演示样例代码

    用Python写一个SQLBuilder.Java版能够从 http://www.java2s.com/Code/Java/Database-SQL-JDBC/SQLBuilder.htm 看到. 附 ...

  6. Python Web框架Tornado的异步处理代码演示样例

    1. What is Tornado Tornado是一个轻量级但高性能的Python web框架,与还有一个流行的Python web框架Django相比.tornado不提供操作数据库的ORM接口 ...

  7. Java连接redis的使用演示样例

    Java连接redis的使用演示样例 Redis是开源的key-value存储工具,redis通经常使用来存储结构化的数据,由于redis的key能够包括String.hash.listset和sor ...

  8. 构造Scala开发环境并创建ApiDemos演示样例项目

    从2011年開始写Android ApiDemos 以来.Android的版本号也更新了非常多,眼下的版本号已经是4.04. ApiDemos中的样例也添加了不少,有必要更新Android ApiDe ...

  9. Thrift的安装和简单演示样例

    本文仅仅是简单的解说Thrift开源框架的安装和简单使用演示样例.对于具体的解说,后面在进行阐述. Thrift简述                                           ...

随机推荐

  1. (转)行为树(Behavior Tree)

    转自:http://www.cnblogs.com/konlil/archive/2011/04/23/2025954.html 如果要让游戏里的角色或者NPC能执行预设的AI逻辑,最简单的用IF.. ...

  2. Elasticsearch入门基础(1)

    基础概念 Elasticsearch有几个核心概念.从一开始理解这些概念会对整个学习过程有莫大的帮助. 接近实时(NRT)         Elasticsearch是一个接近实时的搜索平台.这意味着 ...

  3. [Node.js] Level 5. Express

    Express Routes Let's create an express route that accepts GET requests on'/tweets' and responds by s ...

  4. Unity3d使用json与javaserver通信

    Unity3d使用json能够借助LitJson 下载LitJson,复制到Unity3d工作文件夹下 于是能够在代码中实现了 以下发送请求到server并解析 System.Collections. ...

  5. Cocos2d-x源代码解析(1)——地图模块(1)

    cocos通过加载tiled 生成的tmx文件来生成游戏地图.本文主要分析cocos加载地图模块的源代码.   如图所看到的,地图加载模块由以上几个类组成. 对外的入口是类CCTMXTiledMap, ...

  6. Android内存泄漏分析实战

    内存泄漏简单介绍 java能够保证当没有引用指向对象的时候,对象会被垃圾回收器回收.与c语言自己申请的内存自己释放相比,java程序猿轻松了非常多.可是并不代表java程序猿不用操心内存泄漏.当jav ...

  7. 算法笔记_153:算法提高 判断名次(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 问题描述 某场比赛过后,你想要知道A~E五个人的排名是什么,于是要求他们每个人说了一句话.(经典的开头……-_-!)得了第1名的人23,说了假话:得 ...

  8. Unity3D入门工具介绍(一)

    1.UnitySetup-4.1.2.exe安装包 2unity.pro.4.1.2.patch-MPT.exeUnity3D破解补丁  关于Unity3d 可以看下这个 http://book.2c ...

  9. 【Linux】touch命令

    用途 touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间. 全称 touch全称即为touch 参数 -a   :或--time=atime或--time=access或--time ...

  10. javascript 的继承实例

    shape.prototype = { getEdge:function(){ return this.edge; }, getArea:function(){ return this.a*this. ...