Python如何批量读取指定路径下的非ZIP格式文件夹?
两种解决方法帮你批量读取目标文件夹且避开ZIP文件
方法1:显式列出所有目标文件夹
直接把需要处理的文件夹路径整理成列表,精准控制读取范围,完全不会碰到ZIP文件:
# 把所有要处理的文件夹路径放进列表 input_locations = [ r'path\202206', r'path\202207', r'path\202208' ] # 遍历列表逐个处理文件夹 for folder in input_locations: # 这里替换成你实际处理文件夹的代码,比如读取内部文件等 print(f"正在处理:{folder}")
这种方式最直观,想处理哪些文件夹就加哪些,没有意外。
方法2:读取父目录并自动筛选文件夹
如果不想手动列路径,可以读取父文件夹,然后只保留子文件夹(自动排除ZIP这类文件):
import os parent_dir = r'path' # 遍历父目录下的所有内容 for item_name in os.listdir(parent_dir): item_path = os.path.join(parent_dir, item_name) # 只处理文件夹,自动跳过ZIP等文件 if os.path.isdir(item_path): # 这里写你的处理逻辑 print(f"正在处理文件夹:{item_path}")
要是父目录里还有其他不需要的文件夹,还可以加个筛选规则,比如只留YYYYMM格式的文件夹:
import os import re parent_dir = r'path' # 匹配6位数字的文件夹名(比如202206) folder_pattern = re.compile(r'^\d{6}$') for item_name in os.listdir(parent_dir): item_path = os.path.join(parent_dir, item_name) if os.path.isdir(item_path) and folder_pattern.match(item_name): print(f"正在处理目标文件夹:{item_path}")
内容的提问来源于stack exchange,提问作者Jonnyboi
相关产品推荐
相关产品推荐

