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设计】的支持。

相关文章

使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法

使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法

如下所示: # coding=utf-8 import pandas as pd # 读取csv文件 3列取名为 name,sex,births,后面参数格式为names= name...

Python 获取指定文件夹下的目录和文件的实现

经常有需要扫描目录,对文件做批量处理的需求,所以对目录处理这块做了下学习和总结。Python 中扫描目录有两种方法:os.listdir 和 os.walk。 一、os.listdir...

python3利用tcp实现文件夹远程传输

本文实例为大家分享了python实现文件夹远程传输的具体代码,供大家参考,具体内容如下 实现功能: 通过tcp协议模拟文件夹的下载,注意是文件夹,不是文件。 下面让我们实现以下: 其中...

Python实现命令行通讯录实例教程

Python实现命令行通讯录实例教程

1、实现目标 编写一个命令行通讯录程序,可以添加、查询、删除通讯录好友及电话 2、实现方法 创建一个类来表示一个人的信息。使用字典存储每个人的对象,名字作为键。 使用pickle模块...

python实时获取外部程序输出结果的方法

如下所示: s=subprocess.Popen("ping baidu.com -t",bufsize=0,stdout=subprocess.PIPE,universal_new...