怎样用python批量处理文件夹_python保存到指定文件夹

怎样用python批量处理文件夹_python保存到指定文件夹在 Python 中批量保存文件可以通过多种方式实现 以下是一些示例代码 展示了如何使用 Python 进行批量保存文件的操作 示例 1 按月份保存 Word 文档 pythonimport osimport refrom pprint import pprint origin dir 原始文件 target dir 目标文件 files os

在Python中批量保存文件可以通过多种方式实现,以下是一些示例代码,展示了如何使用Python进行批量保存文件的操作:

示例1:按月份保存Word文档

 import os import re from pprint import pprint origin_dir = '原始文件/' target_dir = '目标文件/' files = os.listdir(origin_dir) month_compile = re.compile('(20\d\d)([0-9])') file_dict = {} for file in files: if file.endswith('.docx'): word_file = os.path.join(origin_dir, file) month = month_compile.search(word_file) if month: month = month.groups() if month[-1] == '00': month = re.search('(20\d\d)0([0-9])', word_file).groups() t1 = '-'.join(month) if t1 in file_dict.keys(): file_dict[t1].append(word_file) else: file_dict[t1] = [word_file] for key, value in file_dict.items(): target_sub_dir = os.path.join(target_dir, key) os.makedirs(target_sub_dir, exist_ok=True) for file in value: shutil.copy2(file, target_sub_dir) pprint(file_dict) 

示例2:使用Pandas保存文本数据

 import pandas as pd import os import re import jieba 设置当前工作路径 os.chdir('C:\\Users\\Administrator\\Desktop\\示例数据') 读取数据 data2 = pd.read_excel('3.xlsx') data2_message = data2['详情'] def wenben(a): b = 10000 for i in range(len(a)): i_str = str(b + i + 1) file_name = i_str + '.txt' d = a[i] f = open('3详情/' + file_name, 'w', encoding='utf-8') f.write(d) f.close() wenben(data2_message) 

示例3:使用zipfile进行文件压缩

 import zipfile import os import time start_dir = r'C:\Users\admin\Desktop\批量备份打包\压缩测试' target_dir = r'C:\Users\admin\Desktop\批量备份打包\备份目的地文件夹' today = target_dir + os.sep + time.strftime('%Y%m%d') if not os.path.exists(today): os.makedirs(today) with zipfile.ZipFile(today + '.zip', 'w', zipfile.ZIP_DEFLATED) as zf: for root, _, files in os.walk(start_dir): for file in files: zf.write(os.path.join(root, file), os.path.relpath(os.path.join(root, file), start_dir)) 

示例4:按组保存文件

 import os folder_capacity = 20 def copy_files(src_dir, dest_dir): count = 0 current_folder = '' for item in os.listdir(src_dir): abs_item = os.path.join(src_dir, item) if os.path.isfile(abs_item): count += 1 if count % folder_capacity == 1: current_folder = os.path.join(dest_dir, str(count // folder_capacity)) os.mkdir(current_folder) with open(os.path.join(current_folder, item), 'wb') as f: with open(abs_item, 'rb') as source_file: f.write(source_file.read()) copy_files(r'C:\src', r'C:\dest') 

示例5:批量下载文件

编程小号
上一篇 2025-04-29 17:02
下一篇 2025-04-29 16:53

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/91794.html