通过python将大量文件按修改时间分类的方法


Posted in Python onOctober 17, 2018

需求是这样的,我从本科到现在硬盘里存了好多照片,本来是按类别分的,有一天,我突然想,要是能按照时间来分类可能会更好。可以右键查看照片的属性,看它的修改日期,从而分类,但是十几个G的照片手动分类工作量还是很大的,所以想着写个脚本程序来完成这一个工作。

程序主要是获取文件的修改时间,包括年和月,并以此为名创建文件夹,再用递归调用的方式遍历整个文件夹,将每一张照片拷贝到相应的文件夹下。

程序源码如下:

#coding:utf-8
import os
import sys
import os.path
import time
from shutil import Error
from shutil import copystat
from shutil import copy2

path_str = r"D:\pic";

def copy_file(src_file, dst_dir):
 if os.path.isdir(dst_dir): 
  pass;
 else: 
  os.makedirs(dst_dir);
 print(src_file);
 print(dst_dir);
 copy2(src_file, dst_dir) 

def walk_file(file_path):
 for root, dirs, files in os.walk(file_path, topdown=False):
  for name in files:
   com_name = os.path.join(root, name);
   t=os.stat(com_name);
   copy_path_str = path_str+r"\year"+str(time.localtime(t.st_mtime).tm_year)+r"\month"+str(time.localtime(t.st_mtime).tm_mon);
   print(copy_path_str);
   copy_file(com_name,copy_path_str); 
  for name in dirs:
   walk_file(name);

walk_file(path_str);

以上这篇通过python将大量文件按修改时间分类的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中base64加密解密方法实例分析
May 16 Python
探究Python中isalnum()方法的使用
May 18 Python
利用python微信库itchat实现微信自动回复功能
May 18 Python
深入浅出分析Python装饰器用法
Jul 28 Python
selenium + python 获取table数据的示例讲解
Oct 13 Python
python pyinstaller 加载ui路径方法
Jun 10 Python
python3+PyQt5 自定义窗口部件--使用窗口部件样式表的方法
Jun 26 Python
python 实现创建文件夹和创建日志文件的方法
Jul 07 Python
Python学习笔记之函数的定义和作用域实例详解
Aug 13 Python
python实现LRU热点缓存及原理
Oct 29 Python
python matplotlib 画dataframe的时间序列图实例
Nov 20 Python
Python实现银行账户资金交易管理系统
Jan 03 Python
python检测文件夹变化,并拷贝有更新的文件到对应目录的方法
Oct 17 #Python
python按时间排序目录下的文件实现方法
Oct 17 #Python
python3 读取Excel表格中的数据
Oct 16 #Python
python在html中插入简单的代码并加上时间戳的方法
Oct 16 #Python
Python对切片命名的实现方法
Oct 16 #Python
Python 给某个文件名添加时间戳的方法
Oct 16 #Python
解决python os.mkdir创建目录失败的问题
Oct 16 #Python
You might like
全国FM电台频率大全 - 8 黑龙江省
2020/03/11 无线电
支持中文、字母、数字的PHP验证码
2015/05/04 PHP
php中header设置常见文件类型的content-type
2015/06/23 PHP
PHP连接MySQL进行增、删、改、查操作
2017/02/19 PHP
JS 自动安装exe程序
2008/11/30 Javascript
js tab效果的实现代码
2009/12/26 Javascript
JS 无法通过W3C验证的处理方法
2010/03/09 Javascript
jQuery.holdReady()使用方法
2014/05/20 Javascript
JS实现鼠标点击展开或隐藏表格行的方法
2015/03/03 Javascript
JavaScript将当前时间转换成UTC标准时间的方法
2015/04/06 Javascript
JavaScript实现MIPS乘法模拟的方法
2015/04/17 Javascript
javascript实现base64 md5 sha1 密码加密
2015/09/09 Javascript
JavaScript编程中布尔对象的基本使用
2015/10/25 Javascript
分享jQuery插件的学习笔记
2016/01/14 Javascript
jQuery模仿京东/天猫商品左侧分类导航菜单效果
2016/06/29 Javascript
JS传值出现中文参数乱码的解决方法
2016/06/30 Javascript
JavaScript中数组Array.sort()排序方法详解
2017/03/01 Javascript
MvcPager分页控件 适用于Bootstrap
2017/06/03 Javascript
Vue中如何实现轮播图的示例代码
2017/07/27 Javascript
在vue项目中正确使用iconfont的方法
2018/09/28 Javascript
[00:47]TI7不朽珍藏III——沙王不朽展示
2017/07/15 DOTA
[52:22]EG vs VG Supermajor小组赛B组 BO3 第一场 6.2
2018/06/03 DOTA
在Pycharm中设置默认自动换行的方法
2019/01/16 Python
PyQt5 加载图片和文本文件的实例
2019/06/14 Python
Django重设Admin密码过程解析
2020/02/10 Python
python安装和pycharm环境搭建设置方法
2020/05/27 Python
CSS3使用border-radius属性制作圆角
2014/12/22 HTML / CSS
详解CSS3中Media Queries的相关使用
2015/07/17 HTML / CSS
美国女孩洋娃娃店:American Girl
2017/10/24 全球购物
Wiggle美国:英国骑行、跑步、游泳、铁人三项商店
2018/10/27 全球购物
Yahoo的PHP面试题
2014/05/26 面试题
机电专业毕业生推荐信
2013/11/10 职场文书
2014年协会工作总结
2014/11/22 职场文书
银行中层干部培训心得体会
2016/01/11 职场文书
教师听课学习心得体会
2016/01/15 职场文书
使用Redis实现点赞取消点赞的详细代码
2022/03/20 Redis