问题求助呀
在你提供的代码中,使用了 glob 模块来获取当前文件夹下所有的 .TXT 后缀的文件,并进行处理后保存为新文件。你希望将处理后的文档保存到原始文件中或者以相同的文件名保存到另一个文件夹中。
根据你的需求,我将给出两种修改方案供参考:
1. 将处理后的文档保存到原始文件中:import globtxt_files = glob.glob("*.TXT")for file in txt_files: with open(file, 'r+') as f: # 使用 'r+' 模式表示可读写模式打开文件 lines = f.readlines() # 逐行读取原始文档内容 f.seek(0) # 将文件指针返回到文件开头 f.truncate() # 清空文件内容 for line in lines: if len(line) < 14: # 如果行长度小于14个字符,不进行处理 f.write(line) else: # 在指定位置插入空格 new_line = line[:4] + " " + line[4:6] + " " + line[6:8] + " " + line[8:10] + " " + line[10:12] + " " + line[12:] f.write(new_line)
这段代码使用 r+ 模式打开原始文件,先将文件内容清空(truncate()),然后重新写入处理后的文档内容。
2. 将处理后的文档保存到另一个文件夹中:import globimport ostxt_files = glob.glob("*.TXT")# 创建新文件夹用于保存处理后的文档if not os.path.exists("processed_files"): os.makedirs("processed_files")for file in txt_files: # 构造新文件的路径和文件名 new_file = os.path.join("processed_files", file) with open(file, 'r') as f: with open(new_file, 'w') as new_f: for line in f: if len(line) < 14: # 如果行长度小于14个字符,不进行处理 new_f.write(line) else: # 在指定位置插入空格 new_line = line[:4] + " " + line[4:6] + " " + line[6:8] + " " + line[8:10] + " " + line[10:12] + " " + line[12:] new_f.write(new_line)
这段代码使用 os.path.join() 函数构造新文件的路径和文件名,并将处理后的文档保存到新文件夹 "processed_files" 中。
希望这些修改方案能满足你的需求!如果还有其他问题,请随时提问。
球一个最佳答案谢谢啦!这对我非常重要!
|