当出现白线时,如何将单个.txt文件拆分为两个或多个.txt文件?
以下是我的txt的示例:
a s d d d d s d f
f d e s s a d f s
a s d d d d s d f
f d e s s a d f s
dsdesd
dseesdse
我想知道如何将单个文本文件拆分为:
第一个txt文件:
a s d d d d s d f
f d e s s a d f s
a s d d d d s d f
f d e s s a d f s
第二个txt文件:
dsdesd
dseesdse
答案 0 :(得分:2)
如果您知道文件只有一个空行,则可以split
的内容以双换行符出现:
with open('input.txt') as f:
contents = f.read()
output1, output2 = contents.split('\n\n')
with open('output1.txt', 'w') as o1:
o1.write(output1)
with open('output2.txt', 'w') as o2:
o2.write(output2)
如果文件中有多个空行,则此操作将失败,因为拆分将返回两个以上的部分,并尝试将它们仅分配给两个名称,output1
和output2
。可以告诉split
仅分配最大次数,这样可能更安全:
output1, output2 = contents.split('\n\n', 1)
如果有两个或多个空行,则output1
将是第一个空行之前的内容。 output2
将是第一个空白行之后的所有内容,包括其他任何空白行。
当然,如果没有空行,这可能会失败。