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实现的一个p2p文件传输实例
Jun 04 Python
简介Python的collections模块中defaultdict类型的用法
Jul 07 Python
离线安装Pyecharts的步骤以及依赖包流程
Apr 23 Python
python实现单线程多任务非阻塞TCP服务端
Jun 13 Python
实践Vim配置python开发环境
Jul 02 Python
python交互界面的退出方法
Feb 16 Python
浅析PyTorch中nn.Module的使用
Aug 18 Python
使用Python的datetime库处理时间(RPA流程)
Nov 24 Python
python中有关时间日期格式转换问题
Dec 25 Python
python生成任意频率正弦波方式
Feb 25 Python
Python编写单元测试代码实例
Sep 10 Python
python实现大文本文件分割成多个小文件
Apr 20 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
php 操作数组(合并,拆分,追加,查找,删除等)
2012/07/20 PHP
php set_time_limit()函数的使用详解
2013/06/05 PHP
PHP输出XML到页面的3种方法详解
2013/06/06 PHP
php中session使用示例
2014/03/29 PHP
php curl 上传文件代码实例
2015/04/27 PHP
php readfile下载大文件失败的解决方法
2017/05/22 PHP
php实现的PDO异常处理操作分析
2018/12/27 PHP
js判断鼠标左、中、右键哪个被点击的方法
2015/01/27 Javascript
js实现鼠标悬浮给图片加边框的方法
2015/01/30 Javascript
jquery动态改变div宽度和高度
2015/02/09 Javascript
AngularJs学习第八篇 过滤器filter创建
2016/06/08 Javascript
两行代码轻松搞定JavaScript日期验证
2016/08/03 Javascript
利用Js的console对象,在控制台打印调式信息测试Js的实现
2016/11/26 Javascript
js 调用百度分享功能
2017/02/27 Javascript
vue获取input输入值的问题解决办法
2017/10/17 Javascript
pm2发布node配置文件ecosystem.json详解
2019/05/15 Javascript
基于 Vue 的 Electron 项目搭建过程图文详解
2020/07/22 Javascript
解决vue路由name同名,路由重复的问题
2020/08/05 Javascript
创建与框架无关的JavaScript插件
2020/12/01 Javascript
javascript中闭包closure的深入讲解
2021/03/03 Javascript
[56:42]VP vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
Python入门篇之字典
2014/10/17 Python
python 数据的清理行为实例详解
2017/07/12 Python
win10下tensorflow和matplotlib安装教程
2018/09/19 Python
解决python3 HTMLTestRunner测试报告中文乱码的问题
2018/12/17 Python
python更新数据库中某个字段的数据(方法详解)
2020/11/18 Python
现代家居用品及礼品:LBC Modern
2018/06/24 全球购物
Pandora德国官网:购买潘多拉手链、戒指、项链和耳环
2020/02/20 全球购物
快餐店的创业计划书范文
2014/01/29 职场文书
英语课外活动总结
2014/08/27 职场文书
爱牙日活动总结
2014/08/29 职场文书
2016年共产党员公开承诺书
2016/03/24 职场文书
Vue全家桶入门基础教程
2021/05/14 Vue.js
JavaScript 数组去重详解
2021/09/15 Javascript
关于CSS自定义属性与前端页面的主题切换问题
2022/03/21 HTML / CSS
Python如何使用循环结构和分支结构
2022/04/13 Python