python怎么实现自动整理文件
发表于:2025-11-10 作者:千家信息网编辑
千家信息网最后更新 2025年11月10日,本篇内容介绍了"python怎么实现自动整理文件"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!演示效
千家信息网最后更新 2025年11月10日python怎么实现自动整理文件
本篇内容介绍了"python怎么实现自动整理文件"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
演示效果:
使用前
使用后
代码:
# # -*- coding:utf-8 -*-import osimport globimport shutilimport tkinterimport tkinter.filedialogfrom datetime import datetimedef start(): root = tkinter.Tk() root.withdraw() dirname = tkinter.filedialog.askdirectory(parent=root,initialdir="/",title='请选择文件夹') return dirname# 定义一个文件字典,不同的文件类型,属于不同的文件夹file_dict = { "图片": ["jpeg", "jpg", "tiff", "gif", "bmp", "png", "bpg", "svg", "heif", "psd"], "视频": ["avi", "flv", "wmv", "mov", "mp4", "webm", "vob", "mng", "qt", "mpg", "mpeg", "3gp", "mkv"], "音频": ["aac", "aa", "aac", "dvf", "m4a", "m4b", "m4p", "mp3", "msv", "ogg", "oga", "raw", "vox", "wav", "wma"], "文档": ["oxps", "epub", "pages", "docx", "doc", "fdf", "ods", "odt", "pwi", "xsn", "xps", "dotx", "docm", "dox","rvg", "rtf", "rtfd", "wpd", "xls", "xlsx","xlsm","ppt", "pptx", "csv", "pdf", "md","xmind"], "压缩文件": ["a", "ar", "cpio", "iso", "tar", "gz", "rz", "7z", "dmg", "rar", "xar", "zip"], "文本": ["txt", "in", "out","json","xml","log"], "程序脚本": ["py", "html5", "html", "htm", "xhtml", "cpp", "java", "css","sql"], '可执行程序': ['exe', 'bat', 'lnk', 'sys', 'com','apk'], '字体文件': ['eot', 'otf', 'fon', 'font', 'ttf', 'ttc', 'woff', 'woff2','shx'], '工程图文件':['bak','dwg','dxf','dwl','dwl2','stp','SLDPRT','ipj','ipt','idw']}# 定义一个函数,传入每个文件对应的后缀。判断文件是否存在于字典file_dict中;# 如果存在,返回对应的文件夹名;如果不存在,将该文件夹命名为"未知分类";def JudgeFile(suffix): for name, type_list in file_dict.items(): if suffix.lower() in type_list: return name return "未知分类"if __name__ == '__main__': try: while True: path = start() print("---->路径是: ",path) if path == "": print("没有选择路径!") break # 递归获取 "待处理文件路径" 下的所有文件和文件夹。 startTime = datetime.now().second for file in glob.glob(f"{path}/**/*", recursive=True): # 由于我们是对文件分类,这里需要挑选出文件来。 if os.path.isfile(file): # 由于isfile()函数,获取的是每个文件的全路径。这里再调用basename()函数,直接获取文件名; file_name = os.path.basename(file) suffix = file_name.split(".")[-1] # 判断 "文件名" 是否在字典中。 name = JudgeFile(suffix) # 根据每个文件分类,创建各自对应的文件夹。 if not os.path.exists(f"{path}\\{name}"): os.mkdir(f"{path}\\{name}") print('path-->',name) # 将文件复制到各自对应的文件夹中。 # shutil.copy(file, f"{path}\\{name}") # 将文件移动到各自对应的文件夹中。 shutil.move(file, f"{path}\\{name}") endTime = datetime.now().second countTime= endTime-startTime print("---->已经整理完成。共花费 {} s".format(countTime)) a = input('---->请按回车键退出:') if a == '': break except BaseException: print('存在重复的文件!')执行起来很简单,只要写完程序,点击程运行,等待弹出窗口,选择需要整理的文件夹即可。
如果觉得以上代码觉得复杂,可以尝试以下更为简单的程序。
如何实现文件自动分类?
同一目录下存在很多不同类型的资源条件
1 .分类
2.创建分类目录
3.移动文件资源
import osimport shutilimport tkinterimport tkinter.filedialogfrom datetime import datetimedef start(): root = tkinter.Tk() root.withdraw() dirname = tkinter.filedialog.askdirectory(parent=root,initialdir="/",title='请选择文件夹') return dirname# 源文件存在路径src_dir=start()# 分类资源存在路径dest_dir=src_dir# 判断目录是否存在if not os.path.exists(dest_dir): os.mkdir(dest_dir)# 源目录分析files=os.listdir(src_dir)for item in files: src_path=os.path.join(src_dir,item) # 判断状态 if os.path.isfile(src_path): #如果是文件,进入代码块 # 判断文件资源的类型 ndir = item.split('.')[-1] desc_path=os.path.join(dest_dir,ndir) # 创建分类目录 if not os.path.exists(desc_path): # 如果分类子目录不存在,创建 os.mkdir(desc_path) shutil.move(src_path,desc_path)"python怎么实现自动整理文件"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
文件
文件夹
分类
路径
目录
程序
资源
选择
不同
函数
字典
类型
代码
内容
文件名
更多
知识
移动
复杂
学有所成
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数字媒体与网络技术哪个好
奇亚数据库同步
服务器存储备份设备管理规定
数据库日志处理
关于网络安全宣传周的ppt
南京运营软件开发定制价格
允许远程连接08数据库
数据库的tcp ip
软件开发 管理 表
计算机网络技术诞生的基础
服务器管理节点raid
嵌入式软件开发算程序员吗
小程序用服务器好还是云托管
东城区服务器回收
湖南郴州学it软件开发学费多少
深圳存储服务器散热器哪家好
改变我生活的互联网科技
公安网络安全管理岗位对视力
吉大数据库原理 sql
接口测试怎么用到数据库
唐山大学生数据库应用前景
机架式服务器怎么连接显示器
济南互联网络科技有限公司
网络安全知识精英赛
计算机网络技术(网站建设与维护)
邮件服务器怎么解决安全方案
北京电信服务器托管云主机云空间
软件开发 管理 表
数据库可变长度
景区规划软件开发