当前位置: 首页 > 编程笔记 >

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

阚原
2023-03-14
本文向大家介绍Python从文件中读取指定的行以及在文件指定位置写入,包括了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方法是从文件末尾开始搜索。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对小牛知识库的支持。

 类似资料:
  • 问题内容: 我不是在谈论特定的行号,因为我正在读取具有相同格式但长度不同的多个文件。 说我有这个文本文件: 我希望你知道我的意思。我正在考虑遍历文件,然后使用正则表达式搜索以找到“开始”和“结束”的行号,然后使用线缓存从开始行读取到结束行。但是如何获得行号?我可以使用什么功能? 问题答案: 如果您只想要和之间的文本块,则可以执行以下操作: 实际上,您不需要操纵行号即可读取开始和结束标记之间的数据。

  • 问题内容: 我创建了一些黄瓜测试步骤和一个小的Cucumber测试用例,它们是通过JUnit运行的,如下所示: 现在,可以从类路径位置自动加载Cucumber功能文件, 我想知道如何告诉黄瓜我的特征文件的位置,因为我需要它从类路径之外的位置(例如data //)加载它们。 问题答案: 我找到了解决方案, @ Cucumber.Options批注中,除了设置报告输出格式和位置外,还允许设置功能文件的

  • 我已经创建了一些cucumber测试步骤和一个小的Cucumber测试用例,我用JUnit运行它,如下所示: Cucumber功能文件现在从类路径位置自动加载,

  • 本文向大家介绍PowerShell读取文本文件指定行内容的方法,包括了PowerShell读取文本文件指定行内容的方法的使用技巧和注意事项,需要的朋友参考一下 本文介绍一个PowerShell中如何一步到位的获取到一个文本文件的第N行。比如一个文本文件,它有1000行,我想把第500行的内容直接取出来的,最简单的方法是通过PowerShell来实现。 在PowerShell中,可以通过Get-Co

  • 除了可以借助 fileinput 模块实现读取文件外, Python 还提供了 linecache 模块。和前者不同,linecache 模块擅长读取指定文件中的指定行。换句话说,如果我们想读取某个文件中指定行包含的数据,就可以使用 linecache 模块。 值得一提的是,linecache 模块常用来读取 Python 源文件中的代码,它使用的是 UTF-8 编码格式来读取文件内容。这意味着,

  • 问题内容: 可以说我在一个文件夹中有三个文件:file9.txt,file10.txt和file11.txt,我想按此特定顺序读取它们。谁能帮我这个? 现在我正在使用代码 它先读取file10.txt,然后读取file11.txt,然后读取file9.txt。 有人可以帮助我如何获得正确的订单吗? 问题答案: 文件系统上的文件未排序。您可以使用函数自己对生成的文件名进行排序: 请注意,您代码中的调