python读取文件最后一行两种方式

1)常规方法:从前往后依次读取

步骤:open打开文件。

读取文件,把文件所有行读入内存。

遍历所有行,提取指定行的数据。

优点:简单,方便

缺点:当文件大了以后时间太慢,无法忍受

2)推荐方法:

步骤:open打开日志文件。

移动文件读取指针到文件末尾。

从后往前移动指针直到合适的位置。

读取文件,提取指定行的数据。

优点:时间相对固定,适合处理大文件

代码实现

fname = 'test.html'

with open(fname, 'r', encoding='utf-8') as f: # 打开文件

lines = f.readlines() # 读取所有行

first_line = lines[0] # 取第一行

last_line = lines[-1] # 取最后一行

print('文件' + fname + '第一行为:'+ first_line)

print('文件' + fname + '最后一行为:' + last_line)

with open(fname, 'rb') as f: # 打开文件

# 在文本文件中,没有使用b模式选项打开的文件,只允许从文件头开始,只能seek(offset,0)

first_line = f.readline() # 取第一行

offset = -50 # 设置偏移量

while True:

"""

file.seek(off, whence=0):从文件中移动off个操作标记(文件指针),正往结束方向移动,负往开始方向移动。

如果设定了whence参数,就以whence设定的起始位为准,0代表从头开始,1代表当前位置,2代表文件最末尾位置。

"""

f.seek(offset, 2) # seek(offset, 2)表示文件指针:从文件末尾(2)开始向前50个字符(-50)

lines = f.readlines() # 读取文件指针范围内所有行

if len(lines) >= 2: # 判断是否最后至少有两行,这样保证了最后一行是完整的

last_line = lines[-1] # 取最后一行

break

# 如果off为50时得到的readlines只有一行内容,那么不能保证最后一行是完整的

# 所以off翻倍重新运行,直到readlines不止一行

offset *= 2

print('文件' + fname + '第一行为:' + first_line.decode())

print('文件' + fname + '最后一行为:' + last_line.decode())

python读取文件第一行_python读取文件首行和最后一行相关推荐

  1. python回到首行_python读取文件首行和最后一行

    python读取文件最后一行两种方式 1)常规方法:从前往后依次读取 步骤:open打开文件. 读取文件,把文件所有行读入内存. 遍历所有行,提取指定行的数据. 优点:简单,方便 缺点:当文件大了以后 ...

  2. python csv数据处理生成图_Python 读取CSV文件数据并生成可视化图形

    CSV 文件数据读取并生成图形 CSV 文件格式 在文本文件中存储数据,最简单的方式就是将数据按照一定的格式存放在文件中,在读取文件时根据设计好的格式去将对应数据读取出来,这样就能很方便的进行简单数据 ...

  3. python如何读取文件指定行_Python读取文件、大文件和指定行内容的几种方法

    在使用python处理文本的时候,经常会需要读取文件的内容.如果文件比较小,那么直接使用open文件对象打开文件,再通过read()方法最为方便,这种方法就是把文件内容读出来后放到内存变量. read ...

  4. python读取大文件的坑_python读取大文件踩过的坑——读取txt文件词向量

    在读取https://github.com/Embedding/Chinese-Word-Vectors中的中文词向量时,选择了一个有3G多的txt文件,之前在做词向量时用的是word2vec,所以直 ...

  5. python读取csv文件路径设置_python读取csv文件

    1 importcsv2 tsvfile = open('any_different_file/excel2.tsv','rt')3 readers =csv.reader(tsvfile)4 for ...

  6. python 读取excel太慢_Python 读取excel并转换为字典

    方法一:利用利用xlrd读取excel文件 其实整个过程比较简单,利用xlrd读取excel文件,再把读取到的数据转换为dict即可. 1.安装 xlrd pip install xlrd 2.读取文 ...

  7. python 读文件写数据库_python读文件写数据库

    Python 读文件,写数据库 Python 读文件 打开文件 Python读写文件在计算机语言中被广泛的应用,如果你想了解其应用的程序,以下的文章会给你详细的介绍相关内容,会你在以后的学习的过程中有 ...

  8. python中对文件的操作_Python对文件操作知识

    这篇文章主要介绍了Python对文件操作知识汇总的相关资料,非常具有参考借鉴价值,需要的朋友可以参考下 打开文件 操作文件 1打开文件时,需要指定文件路径和打开方式 打开方式: r:只读 w:只写 a ...

  9. python读取csv指定行_Python 读取csv的某行

    利用Python自带的 csv模块 ,有两种方法可以实现提取其中的一行 假设CSV文件内容如下: No.,Name,Age,Score 1,Apple,12,98 2,Ben,13,97 3,Celi ...

最新文章

  1. 如何把html转换pdf,怎么把html转换成pdf
  2. 计算机在音乐教学的应用论文开题报告,音乐教育论文开题报告(范文详解)
  3. ORB-SLAM2和ORB-SLAM的区别
  4. jqGrid数据增删查改
  5. XQuery FLWOR 表达式
  6. 计算机组成原理课程设计
  7. 数据库周刊60丨3月国产数据库排行榜出炉;日本银行数据迁移失败致使业务宕机;阿里云RDS PG13发布;亚健康Oracle数据库故障定位;Redis最佳实践;MySQL查询优化……
  8. lumion室内渲染二6.3
  9. 视频中的音频采样率就这样快速修改
  10. [附源码]计算机毕业设计JAVA濒危物种科普系统
  11. 机器学习实战(三)——决策树
  12. 程序员做笔记的利器:MarkDown软件
  13. 爪哇国新游记之十五----泛型动态数组类
  14. IOC在墨者革离中的理解
  15. EOFError: marshal data too short
  16. Revit中添加了标高看不见原来轴网解决方法及轴网转化
  17. 电脑录屏软件哪个好用?3款屏幕录制大师分享!
  18. Vue-组件嵌套之——父组件向子组件传值
  19. 腾讯笔试题20210321
  20. 光储并网simulink仿真模型,直流微电网。 光伏系统采用扰动观察法是实现mppt控制,储能可由单独蓄电池构成

热门文章

  1. mac Android Studio内存配置与使用情况的展示
  2. css3玻璃质感简单实现
  3. 中科金财java_中科金财java开发工程师笔试题(带答案).docx
  4. 移动硬盘或者nvme硬盘安装ubuntu系统
  5. C语言各种排序方法总结。
  6. 2018年北京积分落户数据分析 看这篇就够了
  7. BIN文件与HEX文件比较
  8. Hadoop框架整体介绍
  9. 猫眼爬虫top100(xpath,re)对评分进行数据可视化。
  10. VMWare安装苹果Mac OS系统的方法