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

 更新时间:2020年05月27日 15:33:04   作者:Python  
在本篇文章里小编给大家分享的是关于Python获取文件指定行的内容的方法,有需要的朋友们可以学习下。

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日志模块logging案例详解

    python日志模块logging案例详解

    日志模块主要用于输出运行日志,可以设置输出日志的等级、日志保存路径、日志文件回滚等,这篇文章主要介绍了python日志模块logging,需要的朋友可以参考下
    2024-01-01
  • Python的ORM框架SQLAlchemy入门教程

    Python的ORM框架SQLAlchemy入门教程

    SQLAlchemy 是python 操作数据库的一个库。能够进行 orm 映射,SQLAlchemy“采用简单的Python语言,为高效和高性能的数据库访问设计,实现了完整的企业级持久模型”
    2014-04-04
  • python实现二分查找算法

    python实现二分查找算法

    这篇文章主要为大家详细介绍了python实现二分查找算法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-09-09
  • Python使用monkey.patch_all()解决协程阻塞问题

    Python使用monkey.patch_all()解决协程阻塞问题

    这篇文章主要介绍了Python使用monkey.patch_all()解决协程阻塞问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • Django框架实现的简单分页功能示例

    Django框架实现的简单分页功能示例

    这篇文章主要介绍了Django框架实现的简单分页功能,在之前一篇留言板之上增加了简单分页功能,涉及Paginator模块的简单使用技巧,需要的朋友可以参考下
    2018-12-12
  • Python lambda表达式原理及用法解析

    Python lambda表达式原理及用法解析

    这篇文章主要介绍了Python lambda表达式原理及用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • Matplotlib绘图基础之画布详解

    Matplotlib绘图基础之画布详解

    Matplotlib 库是一个用于数据可视化和绘图的 Python 库,这篇文章主要为大家介绍了下Matplotlib绘制的图形中的第一个重要的元素--画布,感兴趣的可以了解下
    2023-07-07
  • 用python实现前向分词最大匹配算法的示例代码

    用python实现前向分词最大匹配算法的示例代码

    这篇文章主要介绍了用python实现前向分词最大匹配算法的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • python 实现矩阵按对角线打印

    python 实现矩阵按对角线打印

    今天小编就为大家分享一篇python 实现矩阵按对角线打印,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • Python常见沙箱技术与沙箱逃逸避免方法详解

    Python常见沙箱技术与沙箱逃逸避免方法详解

    Python沙箱可以帮助你在安全的环境中运行不受信任的代码,本文将探讨 Python 沙箱的概念、常见的沙箱技术以及如何避免沙箱逃逸,感兴趣的可以了解下
    2024-01-01

最新评论