在 Python 中重新排列文本文件语料库



我有一个文本文件,df.txt,有以下几行:

这是第一句

这是第2句

这是第3句

这是第4句

这是第5句

这是第6句

我想获取另一个文本文件作为

这是第1句 这是第2句

这是第3句 这是第4句

这是第5句 这是第6句

我试过了:

import itertools
block = ''
with open('df.txt', 'r') as file:
for i, value in enumerate(itertools.islice(file, 2)):
block += value
print(block)

哪个不接近:

这是第一句

这是第2句

我想类似的帖子应该在这里,但我找不到。谢谢你的帮助。

这应该有帮助。

演示:

lines = []
with open(filename) as infile:                          #Open file for read
for num, line in enumerate(infile):                 #Iterate Each line
if num % 2 == 0:                                #Pair lines
lines.append(line.strip())
else:
lines[-1] = lines[-1] + "    " + line

#Write File
with open(filename1, "w") as outfile:
for line in lines:
outfile.write(line)

输出:

This is sentence 1    This is sentence 2
This is sentence 3    This is sentence 4
This is sentence 5    This is sentence 6

使用itertools.islice

from itertools import islice
lines = []
with open(filename) as infile:
while True:
next_2_lines = list(islice(infile, 2))
if not next_2_lines:
break
lines.append("t".join(next_2_lines).replace("n", "") )
#Write File
with open(filename1, "w") as outfile:
for line in lines:
outfile.write(line+"n")

试试这个:

block = ''
with open('df.txt', 'r') as file:
lines = file.readlines()
for i in range(len(lines),2):
block += lines[0]+" "+lines[1]+"n"
with open("output.txt", "r") as output_file:
output_file.write(block)

最新更新