如何使用Python重组文本文件中拆分的OPEN/FOUR开头文件名
Python实现方案
实现逻辑
- 按空行分割输入文本,每个分割块对应一个被拆分为多行的原始文件名
- 拼接单个块内的所有行内容,得到完整文件名字符串
- 筛选开头为
OPEN或FOUR的字符串,丢弃不符合要求的内容 - 将筛选后的结果逐行写入输出文件
完整可运行代码
# 可根据实际需求修改输入、输出文件路径 INPUT_PATH = "input.txt" OUTPUT_PATH = "output.txt" if __name__ == "__main__": valid_filenames = [] # 读取原始文件内容按空行分割为块 with open(INPUT_PATH, "r", encoding="utf-8") as in_file: file_blocks = in_file.read().split("\n\n") for block in file_blocks: # 跳过无内容的空白块 if not block.strip(): continue # 拼接块内所有行得到完整文件名 full_name = "".join(line.rstrip("\n") for line in block.splitlines()) # 匹配要求的开头前缀 if full_name.startswith(("OPEN", "FOUR")): valid_filenames.append(full_name) # 输出结果到文件 with open(OUTPUT_PATH, "w", encoding="utf-8") as out_file: out_file.write("\n".join(valid_filenames))
代码说明
- 直接用空行分割的逻辑适配「每个文件名结束后跟随一个空行」的格式规则,无需额外计数判断行数
- 编码默认指定为utf-8,如果你使用的是其他编码(如gbk)可自行修改
- 最终输出结果完全匹配示例给出的输出格式
内容的提问来源于stack exchange,提问作者yodish
相关产品推荐
相关产品推荐

