Python从文件中读取指定的行以及在文件指定位置写入

yipeiwu_com6年前Python基础

Python从文件中读取指定的行

如果想根据给出的行号, 从文本文件中读取一行数据,  Python标准库linecache模块非常适合这个任务:

测试文件内容 :

This is line 1.
This is line 2.
This is line 3.
This is line 4.
This is line 5.
This is line 6.
This is line 7.
This is line 8.

测试代码:

>>> import linecache
>>> file_path = r'D:\work\python\test.txt'
>>> line_number = 5
>>> def get_line_context(file_path, line_number):
...  return linecache.getline(file_path, line_number).strip()
...
>>> get_line_context(file_path, line_number)
'This is line 5.'
>>>

对于这个任务来说,标准的linecache模块是Python能够提供的最佳解决方案。

利用python在文件中的指定位置写入

import os 
file = open( "a.txt", "r" ) 
file_add = open("a.txt","r") 
content = file.read() 
content_add = file_add.read() 
pos = content.find( "buildTypes")
if pos != -1: 
  content = content[:pos] + content_add + content[pos:] 
  file = open( "a.txt", "w" ) 
  file.write( content ) 
  file.close() 
  file_add.close() 

与find用法相同的还有rfind方法,不同的是rfind方法是从文件末尾开始搜索。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

Python之web模板应用

Python的web模板,其实就是在HTML文档中使用控制语句和表达语句替换HTML文档中的变量来控制HTML的显示格式,Python的web模板可以更加灵活和方便的控制HTML的显示,...

python利用7z批量解压rar的实现

一开始我使用了rarfile这个库,奈何对于含有密码的压缩包支持不好,在linux上不抛出异常;之后有又尝试了unrar。。比rarfile还费劲。。 所以用了调用系统命令的方法,用7z...

Python实现一个转存纯真IP数据库的脚本分享

Python实现一个转存纯真IP数据库的脚本分享

前言 之前写过很多关于扫描脚本的文章,一直都没写自己的扫描IP段是哪里搞来的,也会有朋友经常来问一些扫描经验,说实话我觉得这个工具并没有实际的技术含量,但是能提高工作效率,就共享出来给大...

python实现的DES加密算法和3DES加密算法实例

本文实例讲述了python实现的DES加密算法和3DES加密算法。分享给大家供大家参考。具体实现方法如下: #####################################...

使用Python的Twisted框架构建非阻塞下载程序的实例教程

使用Python的Twisted框架构建非阻塞下载程序的实例教程

第一个twisted支持的诗歌服务器 尽管Twisted大多数情况下用来写服务器代码,但为了一开始尽量从简单处着手,我们首先从简单的客户端讲起。 让我们来试试使用Twisted的客户端。...