Python:在fi中的特定位置写

2024-10-01 00:15:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个文件,一个有假设键列表,另一个文件有键和值对,如下所示。在

keys```values

现在,假设我必须在后面的文件中搜索具有键值对的每个键,并且在匹配这些键时,必须在值的位置为特定的键写一些值。在

下面是我的代码,它在运行时与模式相匹配,在控制台显示精确的输出,但是在写入文件时却在文件末尾写入。在

import re
with open('perceive.txt','r') as jawabdo:
   for harsawal in jawabdo:

       with open('answers.txt','ab+') as letmethink:
           for spquestion in letmethink:
               sawal,jawab = spquestion.split("```")
               matching = re.match(sawal.lstrip('\r'),harsawal)
               if matching:
                   size = len(jawab)
                   if(size == 1):
                      jawab = "coming soon"
                      letmethink.write(jawab)
                      print('Answers written successfully!!!')
       letmethink.close()
jawabdo.close()

注意:感知.txt文件中是否有密钥答案.txt是具有键``值对的文件。在


Tags: 文件inretxtforaswithopen
1条回答
网友
1楼 · 发布于 2024-10-01 00:15:02

不可能在文本文件中的特定位置写入

一个好的选择是:

  • 读取文件everything = letmethink.read()
  • 插入新数据everything = everything[:pos] + new_data + everything[pos + 1:]
  • 删除文件letmethink.truncate()
  • 完全替换文件letmethink.write(everything)

如果您不想这样做,那么您必须使用一个数据库和sqlite3,通过它可以在特定位置插入数据

相关问题 更多 >