你电脑里有多少被遗忘的宝藏,快动手拉个清单吧!

你电脑里有多少被遗忘的宝藏,快动手拉个清单吧!

首页角色扮演遗忘的宝藏传奇更新时间:2024-05-11

电脑用的时间越长,藏得宝贝越多。各种音乐、视频、书籍和图片,还有工作相关的文件资料,硬盘塞得满满的。

不善于整理的,桌面上堆满,各个硬盘乱塞,时间一久,根本搞不清文件在什么地方。

善于整理的,会分门别类存放。但大类下面分中类、中类下面分小类……时间一久,目录层次越来越深,慢慢也搞不清楚自己有多少宝藏。

虽然通过文件搜索功能可以查找一些文件,但很多时候自己都不记得还有某些宝藏。

针对这个问题,我想到最好的方法就是“拉清单”,大致思路:

1、遍历指定的硬盘或者目录下的所有文件,获取文件信息。

2、根据指定的后缀将文件信息分门别类写入Excel的Sheet中。

这个工作借助Python,几分钟就能搞定,代码很简单:

1、调用Openpyxl库,按照分类创建清单Sheet

from openpyxl import Workbook # sheet页名称列表 sheets=['文档','表格','视频','音乐','图片','书籍'] wb = Workbook() sheetxh = 0 for sheet in sheets: # 按照顺序创建sheet页 ws=wb.create_sheet(sheet,sheetxh) ws.title=sheet # 增加标题行 ws.append(['文件名称', '文件类型', '文件大小', '创建时间','文件路径']) # 设定列宽 ws.column_dimensions['A'].width = 50 ws.column_dimensions['B'].width = 10 ws.column_dimensions['C'].width = 15 ws.column_dimensions['D'].width = 15 ws.column_dimensions['E'].width = 60 # sheet位置 sheetxh = sheetxh 1

2、遍历文件,并分门别类写到Sheet页

#递归函数 def traverse_files(path): global wb global sheets for file in os.listdir(path): file_path = os.path.join(path, file) #当前若是目录 if os.path.isdir(file_path): # 递归遍历子目录 traverse_files(file_path) #当前若是文件 elif os.path.isfile(file_path): # 获取文件长度、后缀和创建时间 file_size = os.path.getsize(file_path) file_time = datetime.fromtimestamp(os.stat(file_path).st_ctime).strftime('%Y-%m-%d') file_ext = os.path.splitext(file)[1].lower() #根据后缀将文件写到sheet页 filetypes = [['.doc', '.docx', '.pdf'], ['.xls', '.xlsx'], ['.mp4'], ['.mp3', '.flac'], ['.jpg', '.png'],['.epub']] xh=0 for ftypes in filetypes: for ftype in ftypes: if file_ext==ftype: ws=wb[sheets[xh]] ws.append([file, file_ext, file_size, file_time, path]) xh=xh 1

轻松得到上图运行结果,电脑里有哪些宝藏就清清楚楚了。

附完整代码:

import os from openpyxl import Workbook from datetime import datetime def traverse_files(path): global wb global sheets for file in os.listdir(path): file_path = os.path.join(path, file) #当前若是目录 if os.path.isdir(file_path): # 递归遍历子目录 traverse_files(file_path) #当前若是文件 elif os.path.isfile(file_path): # 获取文件长度、后缀和创建时间 file_size = os.path.getsize(file_path) file_time = datetime.fromtimestamp(os.stat(file_path).st_ctime).strftime('%Y-%m-%d') file_ext = os.path.splitext(file)[1].lower() #根据后缀将文件写到sheet页 filetypes = [['.doc', '.docx', '.pdf'], ['.xls', '.xlsx'], ['.mp4'], ['.mp3', '.flac'], ['.jpg', '.png'],['.epub']] xh=0 for ftypes in filetypes: for ftype in ftypes: if file_ext==ftype: ws=wb[sheets[xh]] ws.append([file, file_ext, file_size, file_time, path]) xh=xh 1 if __name__=='__main__': # sheet页名称列表 sheets=['文档','表格','视频','音乐','图片','书籍'] wb = Workbook() sheetxh = 0 for sheet in sheets: # 按照顺序创建sheet页 ws=wb.create_sheet(sheet,sheetxh) ws.title=sheet # 增加标题行 ws.append(['文件名称', '文件类型', '文件大小', '创建时间','文件路径']) # 设定列宽 ws.column_dimensions['A'].width = 50 ws.column_dimensions['B'].width = 10 ws.column_dimensions['C'].width = 15 ws.column_dimensions['D'].width = 15 ws.column_dimensions['E'].width = 50 # sheet位置 sheetxh = sheetxh 1 #遍历归类 traverse_files("E:\我的文档") #保存清单 wb.save("E:\我的文档\doclist.xlsx")

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved