按⽂件名批量分类⽂件到⽂件夹
需要:蟒蛇解释器,EXCEL
本⽅法的分类依据是,遍历某⼀路径下所有⽂件和⽂件夹,出所有⽂件。⽂件名若包含⽬标⽂件夹名,则⽂件会被⾃动剪切复制到⽬标⽂件夹中,否则,不做操作。
古代四大美女是谁import os
import shutil
import pandas as pd
def mkdirs(path):
path = path.strip()
path = path.rstrip("\\") # 去除尾部 \ 符号
isExists = ists(path)
if not isExists:
os.makedirs(path)        # 创建⽬录
print(path + ' 创建成功')
return True
else:
孙燕姿 妹妹print(path + ' ⽬录已存在')
return False
'''将原根⽬录路径下所有⼦⽂件移动到新⽂件夹中,分类依据为⽂件名称包含⽂件夹名称'''名字游戏
def search_file(row_root_path, foldername, new_root_path):
queue = []
千什么百什么的成语queue.append(row_root_path)
孟雪 李茂鼎while len(queue) > 0:
tmp = queue.pop(0)
if (os.path.isdir(tmp)):  #如果该路径是⽂件夹,遍历该路径中⽂件和⽂件夹
for item in os.listdir(tmp):
queue.append(os.path.join(tmp, item))  # 将所得路径加⼊队列queue
elif (os.path.isfile(tmp)): #如果该路径是⽂件,获取⽂件名和⽂件⽬录,将⽂件名与⽂件⽬录连接起来,形成完整路径
name = os.path.basename(tmp)
dirname = os.path.dirname(tmp)
row_full_path = os.path.join(dirname, name)
new_full_path = new_root_path +'/' + name #定义新路径,匹配符合条件的⽂件
if foldername in name:
李思思生活照ve(row_full_path, new_full_path)
if __name__ == '__main__':
ad_excel('E:/⽂件批量分类到⽂件夹.xlsx')
for i in data['类别⽂件夹所在路径']:
mkdirs(i)
for i in range(len(data['类别'])):
search_file(data['图⽚所在路径'][i],data['类别'][i].strip(),data['类别⽂件夹所在路径'][i])
建⽴的Excel⽂件,命名为⽂件批量分类到⽂件夹放在E盘如下位置,E:/⽂件批量分类到⽂件夹.xlsx,EXCEL形式如下: