Python如何获取文件指定行的内容


Posted in Python onMay 27, 2020

linecache, 可以用它方便地获取某一文件某一行的内容。而且它也被 traceback 模块用来获取相关源码信息来展示。

用法很简单:

>>> import linecache
>>> linecache.getline('/etc/passwd', 4)
'sys:x:3:3:sys:/dev:/bin/sh\n'

linecache.getline 第一参数是文件名,第二个参数是行编号。如果文件名不能直接找到的话,会从 sys.path 里找。

如果请求的行数超过文件行数,函数不会报错,而是返回''空字符串。

如果文件不存在,函数也不会报错,也返回''空字符串。

# Python的标准库linecache模块非常适合这个任务
import linecache
the_line = linecache.getline('d:/FreakOut.cpp', 222)
print (the_line)
# linecache读取并缓存文件中所有的文本,
# 若文件很大,而只读一行,则效率低下。
# 可显示使用循环, 注意enumerate从0开始计数,而line_number从1开始
def getline(the_file_path, line_number):
 if line_number < 1:
  return ''
 for cur_line_number, line in enumerate(open(the_file_path, 'rU')):
  if cur_line_number == line_number-1:
   return line
 return ''

方法扩展:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
# Python的标准库linecache模块非常适合这个任务
import linecache
the_line = linecache.getline('d:/FreakOut.cpp', 222)
print (the_line)
# linecache读取并缓存文件中所有的文本,
# 若文件很大,而只读一行,则效率低下。
# 可显示使用循环, 注意enumerate从0开始计数,而line_number从1开始
def getline(the_file_path, line_number):
 if line_number < 1:
  return ''
 for cur_line_number, line in enumerate(open(the_file_path, 'rU')):
  if cur_line_number == line_number-1:
   return line
 return ''
the_line = linecache.getline('d:/FreakOut.cpp', 222)
print (the_line)

到此这篇关于Python如何获取文件指定行的内容的文章就介绍到这了,更多相关Python获取文件指定行的内容的方法内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现的防DDoS脚本
Feb 08 Python
Python中asyncore的用法实例
Sep 29 Python
举例详解Python中循环语句的嵌套使用
May 14 Python
Python冲顶大会 快来答题!
Jan 17 Python
Python3.6基于正则实现的计算器示例【无优化简单注释版】
Jun 14 Python
解决pandas read_csv 读取中文列标题文件报错的问题
Jun 15 Python
对Python中实现两个数的值交换的集中方法详解
Jan 11 Python
详解python读取和输出到txt
Mar 29 Python
python使用Plotly绘图工具绘制散点图、线形图
Apr 02 Python
在python3中使用shuffle函数要注意的地方
Feb 28 Python
配置python的编程环境之Anaconda + VSCode的教程
Mar 29 Python
python实现批量转换图片为黑白
Jun 16 Python
Python web如何在IIS发布应用过程解析
May 27 #Python
利用Python实现某OA系统的自动定位功能
May 27 #Python
Python中常见的数制转换有哪些
May 27 #Python
Python如何实现邮件功能
May 27 #Python
Python中内建模块collections如何使用
May 27 #Python
Python OpenCV实现测量图片物体宽度
May 27 #Python
Python中socket网络通信是干嘛的
May 27 #Python
You might like
精致的人儿就要挑杯子喝咖啡
2021/03/03 冲泡冲煮
如何将一个表单同时提交到两个地方处理
2006/10/09 PHP
php中try catch捕获异常实例详解
2014/11/21 PHP
Yii2语言国际化的配置教程
2018/08/19 PHP
PHP中十六进制颜色与RGB颜色值互转的方法
2019/03/18 PHP
如何在PHP中读写文件
2020/09/07 PHP
ie 处理 gif动画 的onload 事件的一个 bug
2007/04/12 Javascript
不同浏览器的怪癖小结
2010/07/11 Javascript
基于JQuery 的消息提示框效果代码
2011/07/31 Javascript
js读写(删除)Cookie实例详解
2013/04/17 Javascript
JavaScript设计模式之单件模式介绍
2014/12/28 Javascript
JavaScript在浏览器标题栏上显示当前日期和时间的方法
2015/03/19 Javascript
使用js复制链接中的部分文字的方法
2015/07/30 Javascript
jQuery遮罩层实现方法实例详解(附遮罩层插件)
2015/12/08 Javascript
JavaScript判断表单为空及获取焦点的方法
2016/02/12 Javascript
利用angular.copy取消变量的双向绑定与解析
2016/11/25 Javascript
Flask中获取小程序Request数据的两种方法
2017/05/12 Javascript
vue.js给动态绑定的radio列表做批量编辑的方法
2018/02/28 Javascript
解决vue2 在mounted函数无法获取prop中的变量问题
2018/11/15 Javascript
微信小程序实现发送验证码按钮效果
2018/12/20 Javascript
利用es6 new.target来对模拟抽象类的方法
2019/05/10 Javascript
layui监听select变化,以及设置radio选中的方法
2019/09/24 Javascript
js实现磁性吸附的示例
2020/10/26 Javascript
react antd表格中渲染一张或多张图片的实例
2020/10/28 Javascript
解决Vue大括号字符换行踩的坑
2020/11/09 Javascript
[03:42]2014DOTA2西雅图国际邀请赛 Navi战队巡礼
2014/07/07 DOTA
python实现简单淘宝秒杀功能
2018/05/03 Python
python破解zip加密文件的方法
2018/05/31 Python
python word转pdf代码实例
2019/08/16 Python
解决IDEA 的 plugins 搜不到任何的插件问题
2020/05/04 Python
美国最佳在线航班预订网站:LookupFare
2019/03/26 全球购物
班级活动总结格式
2014/08/30 职场文书
在人间读书笔记
2015/06/30 职场文书
python scrapy简单模拟登录的代码分析
2021/07/21 Python
python之基数排序的实现
2021/07/26 Python
Redis Lua脚本实现ip限流示例
2022/07/15 Redis