0

假设我有两个 txt 文件, in.txt并且out.txt.

在.txt

Mary is Passed 
Jane is Failed

出.txt

Status of Mary: 'N/A'
Status of Jane: 'N/A'

我想编写 Python 代码,它读取in.txt并替换 'N/A'Passed为 Mary 和FailedJane in out.txt

我可以设法写在行尾out.txt但不能写在'N/A'

4

2 回答 2

0

在此处查看我对相关问题的回答:删除文件中的一行

基本上,编辑文件中间的字节并不好玩。如果文件不是太大,您应该只读取内存中的文件并在最后覆盖它,或者如果它真的很大,则使用类似tempfile的东西。

于 2013-11-07T06:01:01.083 回答
0
import re

...

outf = open('myout', 'r+')
inf = open('infile', 'r')
outdata = outf.read()
for line in inf:
    outdata = re.sub("(?<=Status of %s: )'N/A'" % line.strip().split()[0], line.strip().split()[2], outdata)
outf.write(outdata)
outf.close()
inf.close()
于 2013-11-09T22:22:12.527 回答