这里有一种更面向对象的方法,使用简单编码的FSM(有限状态机)来控制读取完整数据记录的过程。它比当前发布的其他答案更加冗长,但是它是一种相当灵活和可扩展的方法来处理这些任务,并通过错误检查来完成。在class Record(object):

def __init__(self, time=None, bins=None, fltarr=None):

self.time = time

self.bins = bins

self.fltarr = fltarr

def read(self, file):

""" Read complete record from file into self and return True,

otherwise return False if EOF encountered """

START, STOP, EOF = 0, -1, -99

state = START

while state not in (EOF, STOP):

line = file.readline()

if not line: state = EOF; break

# process line depending on read state

if state == 0:

self.time = float(line)

state = 1

elif state == 1:

self.bins = int(line)

state = 2

elif state in (2, 3):

# ignore line

state += 1

elif state == 4:

self.fltarr = []

last_bin = self.bins-1

for bin in xrange(self.bins):

self.fltarr.append([float(x) for x in line.split()])

if bin == last_bin: break

line = file.readline()

if not line: state = EOF; break

if state != EOF:

state = STOP

return state == STOP

def __str__(self):

result = 'Record(time={}, bins={}, fltarr=[\n'.format(self.time, self.bins)

for floats in self.fltarr:

result += ' {}\n'.format(floats)

return result + '])'

fname = 'sample_data.txt'

with open(fname, 'r') as input:

data = []

while True:

record = Record()

if not record.read(input):

break

else:

data.append(record)

for record in data:

print record

输出:

^{pr2}$

python读取txt文件每一行存为列表,从txt文件中读取一定数量的行,并以python方式转换为list...相关推荐

  1. java文件替换一行数据_用Golang替换文件中的一行

    我是Golang的新手,从一些例子开始 . 目前,我要做的是逐行读取文件,并在满足特定条件时将其替换为另一个字符串 . 该文件用于测试目的包含四行: one two three four 处理该文件的 ...

  2. java jar包资源文件_深入jar包:从jar包中读取资源文件

    我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的处理当然不会有问题.但是,如果我们把代码打成一个jar包以后,即使将资源文件一并打包,这些东西也找不出来了.看看 ...

  3. java stream 多次读取_多次从具有大量数据的Java InputStream中读取

    我想知道什么是从Java InputStream多次读取字节并在流很大时仍然有效的最佳方法. 假设我有以下代码: public void handleBytes(InputStream in) { d ...

  4. 使用python实现微博评论分词与关键词提取(从MySQL数据库中读取数据)

    一.实验环境 (1)Windows操作系统: (2)PyCharm 2019.1. (3)数据库用户名为 root,密码为 123456. (4)  学校机房电脑,带有mysql 二.获取数据库信息 ...

  5. java 读取webapp文件_在Java Webapp和Java Normal应用中读取公共外部属性文件

    但是,我们有以下一些特殊要求, Webapp将部署到tomcat. 格式为.jar的普通Java应用程序将放在/ myapp文件夹下 myappConfig.property文件将放置在/ myapp ...

  6. 博图如何读取mysql数据_博途使用小结:从SQL中读取数据并给变量赋值

    1.建立内部变量TON_Report,VF01_Runtime,JC01_Runtime,VF05_Runtime,数据类型为Real,长度为2 2.建立查询按钮,点击查询按钮时读取SQL中的数据并赋 ...

  7. python排序统计重复的数_Python统计列表(List)中的重复项出现的次数并进行排序...

    学习Python的过程中,你会遇到各种各样的坑,不要觉得难,当你去踩过就会觉得很简单了! 正文: 题目概述 对于一个列表,比如List = [1,2,3,4,5,3,2,1,4,5,6,4,2,3,4 ...

  8. c# xls 复制一行_怎么用C#在EXCEL中插入一个拷贝的行

    展开全部 在Excel中插入拷贝行,可以参考用Spire.XLS.dll来做,这里做了demo,你可以对比636f707962616964757a686964616f31333365643630一下前 ...

  9. Python——读取txt文件每一行数据

    Python--读取txt文件每一行数据生成列表 一.例子1 (间隔符:逗号) 1.1 文件 1.2 代码 1.3 结果 二.例子2 (间隔符:空格) 2.1 文件 2.2 代码 2.3 结果 参考文 ...

最新文章

  1. jQuery 加法计算 使用+号即强转类型
  2. 为衣服添加NFC功能:挥下袖子就能安全支付,打开车门坐进去就能启动汽车|Nature子刊...
  3. html5 td中的5它空隙--待解决
  4. 日志组件logback的介绍及配置使用方法(一)
  5. 地球绕太阳一圈有多远
  6. 剑指 Offer 43. 1~n 整数中 1 出现的次数
  7. 在jetson tx2上使用pascal VOC0712训练caffe-ssd
  8. 第04章:MongoDB基本概念
  9. android rom 刷机包下载地址,谷歌Android5.0 Nexus系列安卓ROM刷机包镜像/驱动下载地址发布...
  10. 医学知识图谱构建关键技术及研究进展
  11. linux sz命令 二进制,ubuntu下rz/sz命令的安装与使用说明
  12. jxls遍历list时使用模板的批注语法
  13. SQL Server 2008 R2安装步骤示例
  14. Module `react-native-vector-icons/Ionicons` does not exist in the Haste module map
  15. 在XP上将Office 2003升级到2010或并排运行
  16. Python基础刷题,期末不挂科~~~(已完结)
  17. VOLTE_SRVCC和ESRVCC
  18. C语言 计算学生各科成绩平均分的总和
  19. 题目20: 吝啬的国度
  20. CleanMyMac x2021中文版mac清理软件激活码下载

热门文章

  1. appcan slider轮播图和页面弹动冲突解决
  2. Java泛型中extends和super的理解(转)
  3. C/C++编程笔记:C/C++ 的编译和链接
  4. 好图表的标准是什么?手把手教你用GLAD原则优化一张看板
  5. 7个理由,给你推荐这款“秒杀Excel”的分析神器!
  6. 【转载】浅谈 看图软件 的设计与实现
  7. 浅谈:飞鸽传书 的TCP/IP原理
  8. 飞鸽传书是企业网络营销管理专家
  9. Android的隐式意图
  10. 2008年度一个下岗程序员的真实经历