我有这个代码来组合一个文本文件中的所有行,并将它组合成另一个新文本文件中的一行。 例如: 我有一个包含这些行的文本文件
学院
逃逸
电源
文本
我需要将这些行合并到网上
College Escape Power Text
这对我来说很好。
代码:
import os
current = None
parts = []
with open('input.txt', 'rb') as f:
for line in f:
if line.startswith('--'):
current = [line.strip()]
parts.append(current)
elif current is not None:
current.append(line.strip())
with open('output.txt', 'w+b') as f1:
for part in parts:
f1.write('\n'+' '.join(part+' '))
但是需要将所有文本文件行合并为一个文本文件。请您指导我。
示例:我的路径中有这些文本文件。
input.txt中
输入(1).txt
输入(2).txt
输入(3).txt
答案 0 :(得分:1)
您可以读取所有文本文件:
import os
file_contents = []
for file in os.listdir("directory_to_search"):
if file.endswith(".txt"):
with open('input.txt', 'rb') as f:
file_contents.append(" ".join(line.strip() for line in f))
这将使用每个文件的内容填充file_contents,现在您可以将它们全部写入输出文件:
with open('output.txt', 'w+b') as f1:
all_files_as_one_string = ' '.join(file_contents)
f1.write(all_files_as_one_string)
请注意,如果每个文件中都有多个单词,则需要循环遍历file_contents列表并加入所有行,然后再从中创建单个大字符串。