说明
《Python 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gr99123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
需求为将指定目录下的子目录的所有文件移到到一个新指定的目录,新目录不再有子目录。本方案可以指定移动指定扩展名文件,如果想指定文件名格式可以在文件名上用通配符*
来限定。
代码如下:
import shutil
import os
import glob
# 原文件存放目录
path = '/Users/gairuo/Documents/2021'
# 目标文件存放目录, 先创建好
to_path = '/Users/gairuo/Documents/2021/new/'
# 找到子目录方法
sub_dir = lambda p: [p+'/'+i for i in os.listdir(p)]
# 找到文件,只找格式为
files = []
for i in sub_dir(path):
fs = glob.glob(f'{i}/*.xlxs') # 只找扩展名为此的
files = files + fs
print(files)
执行上边的代码后可以找到所以子目录下的文件路径,形成一个列表,然后再执行下边的代码做移动操作。
# 操作复制
for i in files:
shutil.copy(i, to_path)
print(f'复制完 {i}')
批量操作完成。
更新时间:2021-11-09 23:58:41 标签:python 文件