没去除之前。
去除之后:
import os import re # 正则表达式:只保留中文字符 pattern = r"[^\u4e00-\u9fa5]" # 获取当前脚本的目录 current_work_dir = os.path.dirname(__file__) # 动态生成文件路径 source_folder = os.path.join(current_work_dir, '采集好的数据') output_folder = os.path.join(source_folder, '改') # 打印当前目录和生成的路径 print("Current working directory:", current_work_dir) print("Source folder:", source_folder) print("Output folder:", output_folder) # 如果目标文件夹不存在,则创建 if not os.path.exists(output_folder): os.makedirs(output_folder) # 批量处理文件 for filename in os.listdir(source_folder): if filename.endswith(".txt"): # 只保留中文字符作为新文件名 new_filename = re.sub(pattern, "", filename) # 检查新文件名是否为空 if not new_filename.strip(): new_filename = "未命名文件" # 确保文件名后缀为 .txt new_filename += ".txt" # 构建原文件路径和新文件路径 old_file_path = os.path.join(source_folder, filename) new_file_path = os.path.join(output_folder, new_filename) # 复制文件到新的文件夹并使用新文件名 with open(old_file_path, "r", encoding="utf-8") as file: content = file.read() with open(new_file_path, "w", encoding="utf-8") as new_file: new_file.write(content) print(f"Processed: {filename} -> {new_filename}") print("文件标题批处理完成!")
解释:[HideArea]
current_work_dir = os.path.dirname(__file__):获取当前python脚本所在的目录。
source_folder 和 output_folder:使用 os.path.join 将相对路径拼接到当前工作目录下,动态生成文件夹路径。
你可以根据需要修改这些路径,让脚本能够在任何位置运行并动态调整文件路径。
print 语句会显示当前的工作目录、源文件夹和输出文件夹,方便调试和确认路径是否正确。
[/HideArea]