我有一个包含以下各行的文件。在这里,我想阅读以forw开头的行和以.txt结尾的行之间的行。使用python脚本将每组提取的行复制到单独的新文件中。
forw l1tt DeleteULPhCH 0
forw l1tt activate 1
forw l1tt DeleteCCB 0 1 0
forw l1tt DeleteDLPhCH 0
BCH_CCB63.txt
DL_BCH_PhCh.txt
forw l1tt setuecontext 100
forw l1tt DeleteCCB 65 1 0
DL_BCH_PhCh.txt
我的输出应该是这样的:
forw l1tt activate 1
forw l1tt DeleteULPhCH 0
forw l1tt activate 1
forw l1tt DeleteCCB 0 1 0
forw l1tt DeleteDLPhCH 0
在一个文件中。
在另一个文件中应该是这样的:
forw l1tt setuecontext 100
forw l1tt DeleteCCB 65 1 0
我使用了以下python代码:它仅提取第一组输出。但是在给出中断条件后,我无法提取第二组输出。请尽快帮助我。
fin=open("script.txt","r")
fout=open("output.txt","w")
lines=fin.readlines()
for line in lines:
if re.search(r"(.*)(.txt)",line):
break
print line
fout.write(line)
fin.close()
fout.close()
似乎他不想在创建的文件中包含“ .txt”行
import re
n = 1
with open("script.txt","r") as my_file:
my_list = []
for line in my_file.readlines():
if not re.search(r"(.*)(.txt)",line):
my_list.append(line)
with open("output"+str(n)+".txt","w") as out_file:
for item in my_list:
out_file.write(item)
else:
if my_list:
my_list=[]
n += 1
创建文件:
$ cat output1.txt
forw l1tt DeleteULPhCH 0
forw l1tt activate 1
forw l1tt DeleteCCB 0 1 0
forw l1tt DeleteDLPhCH 0
$ cat output2.txt
forw l1tt setuecontext 100
forw l1tt DeleteCCB 65 1 0
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句