百度网站快速优化昭通网站开发
2026/4/16 6:12:29 网站建设 项目流程
百度网站快速优化,昭通网站开发,四川省第十五公司官网,ps个人网页设计素材你想要用 Python 实现读取一个按行存储文件名的 TXT 文件#xff0c;将每行内容作为目标文件名#xff0c;然后把这些文件从原位置移动到指定的新位置#xff0c;我会为你提供一份完整、健壮的实现代码#xff0c;并详细解释关键步骤。实现思路读取 TXT 文件#xff1a;逐…你想要用 Python 实现读取一个按行存储文件名的 TXT 文件将每行内容作为目标文件名然后把这些文件从原位置移动到指定的新位置我会为你提供一份完整、健壮的实现代码并详细解释关键步骤。实现思路读取 TXT 文件逐行读取 TXT 文件中的内容清理每行的换行符、空格等无效字符过滤空行路径处理定义文件的源目录文件原本所在位置和目标目录要移动到的位置自动创建目标目录避免目录不存在报错文件移动遍历读取到的每个文件名拼接完整的源路径和目标路径使用shutil库安全移动文件并处理文件不存在、权限不足等异常异常处理针对常见错误如文件不存在、权限问题、路径错误给出明确提示保证程序健壮性。完整 Python 代码示例pythonimport os import shutil def move_files_from_txt(txt_file_path, source_dir, target_dir): 从TXT文件读取文件名将对应文件从源目录移动到目标目录 :param txt_file_path: 存储文件名的TXT文件路径如./file_list.txt :param source_dir: 源文件所在目录如./source_files/ :param target_dir: 目标目录如./target_files/ # 1. 检查TXT文件是否存在 if not os.path.exists(txt_file_path): print(f错误TXT文件 {txt_file_path} 不存在) return # 2. 自动创建目标目录如果不存在 os.makedirs(target_dir, exist_okTrue) # 3. 读取TXT文件中的文件名逐行 try: with open(txt_file_path, r, encodingutf-8) as f: # 读取所有行清理空行和换行符 file_names [line.strip() for line in f.readlines() if line.strip()] except Exception as e: print(f读取TXT文件失败{str(e)}) return # 4. 遍历文件名移动对应文件 success_count 0 # 成功移动的文件数 fail_count 0 # 移动失败的文件数 fail_files [] # 记录移动失败的文件 for file_name in file_names: # 拼接源文件完整路径和目标文件完整路径 source_file os.path.join(source_dir, file_name) target_file os.path.join(target_dir, file_name) # 检查源文件是否存在 if not os.path.exists(source_file): print(f跳过文件 {source_file} 不存在) fail_count 1 fail_files.append(file_name) continue # 避免目标文件已存在可选覆盖/跳过这里选择跳过 if os.path.exists(target_file): print(f跳过目标目录已存在文件 {file_name}不覆盖) fail_count 1 fail_files.append(file_name) continue # 移动文件 try: shutil.move(source_file, target_file) print(f成功{file_name} 已移动到 {target_dir}) success_count 1 except PermissionError: print(f失败无权限移动 {file_name}文件可能被占用/权限不足) fail_count 1 fail_files.append(file_name) except Exception as e: print(f失败移动 {file_name} 出错 - {str(e)}) fail_count 1 fail_files.append(file_name) # 5. 输出移动结果统计 print(\n 移动完成 ) print(f总计读取文件名{len(file_names)} 个) print(f成功移动{success_count} 个) print(f移动失败{fail_count} 个) if fail_files: print(f失败文件列表{fail_files}) # ------------------- 调用示例 ------------------- if __name__ __main__: # 请根据你的实际情况修改以下参数 TXT_FILE ./file_list.txt # 存储文件名的TXT文件路径 SOURCE_DIR ./original_files/ # 源文件所在目录 TARGET_DIR ./moved_files/ # 目标目录会自动创建 # 调用函数执行文件移动 move_files_from_txt(TXT_FILE, SOURCE_DIR, TARGET_DIR)关键说明TXT 文件格式要求TXT 文件每行仅写一个文件名包含扩展名例如plaintext商品1.jpg 文档2.pdf 视频3.mp4代码会自动过滤空行和行首 / 行尾的空格、换行符无需手动清理。路径配置注意事项TXT_FILE填写 TXT 文件的完整路径如D:/list/file_names.txt或相对路径如./file_list.txtSOURCE_DIR/TARGET_DIR路径结尾建议加/Windows 系统加\例如D:/source/、./target/Windows 系统路径可使用\\转义或原始字符串如rD:\source\file.txt。异常处理说明处理了 “TXT 文件不存在”“源文件不存在”“目标文件已存在”“权限不足” 等常见错误目标文件已存在时默认跳过若需要覆盖可删除if os.path.exists(target_file):相关代码块。依赖说明代码使用 Python 内置库os和shutil无需额外安装第三方库直接运行即可。总结核心逻辑是读取 TXT→清理文件名→拼接路径→移动文件关键要做好路径处理和异常捕获os.makedirs(target_dir, exist_okTrue)可自动创建目标目录避免目录不存在的报错shutil.move()是 Python 移动文件的标准方法支持跨目录、跨磁盘部分系统移动比手动复制删除更安全。如果需要调整逻辑比如覆盖目标文件、移动时重命名、读取带路径的文件名可以告诉我我会帮你修改代码。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询