通过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 相关文章推荐
打开电脑上的QQ的python代码
Feb 10 Python
Python sys.path详细介绍
Oct 17 Python
在树莓派2或树莓派B+上安装Python和OpenCV的教程
Mar 30 Python
Python中MySQLdb和torndb模块对MySQL的断连问题处理
Nov 09 Python
浅谈python对象数据的读写权限
Sep 12 Python
利用python解决mysql视图导入导出依赖的问题
Dec 17 Python
python读取excel指定列数据并写入到新的excel方法
Jul 10 Python
Python实现账号密码输错三次即锁定功能简单示例
Mar 29 Python
python3实现二叉树的遍历与递归算法解析(小结)
Jul 03 Python
使用Python构造hive insert语句说明
Jun 06 Python
Python虚拟环境库virtualenvwrapper安装及使用
Jun 17 Python
python使用yaml 管理selenium元素的示例
Dec 01 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
[转帖]PHP世纪万年历
2006/12/06 PHP
使用php实现下载生成某链接快捷方式的解决方法
2013/05/07 PHP
单台服务器的PHP进程之间实现共享内存的方法
2014/06/13 PHP
ThinkPHP跳转页success及error模板实例教程
2014/07/17 PHP
PHP将HTML转换成文本的实现代码
2015/01/21 PHP
php通过array_shift()函数移除数组第一个元素的方法
2015/03/18 PHP
js css样式操作代码(批量操作)
2009/10/09 Javascript
jquery miniui 教程 表格控件 合并单元格应用
2012/11/25 Javascript
JS对话框_JS模态对话框showModalDialog用法总结
2014/01/11 Javascript
javascript模拟map输出与去除重复项的方法
2015/02/09 Javascript
JavaScript限定图片显示大小的方法
2015/03/11 Javascript
简单学习JavaScript中的for语句循环结构
2015/11/10 Javascript
thinkphp实现无限分类(使用递归)
2015/12/19 Javascript
微信小程序 动态的设置图片的高度和宽度详解及实例代码
2017/02/24 Javascript
使用BootStrap实现标签切换原理解析
2017/03/14 Javascript
微信小程序商城项目之侧栏分类效果(1)
2017/04/17 Javascript
jQuery实现百度登录框的动态切换效果
2017/04/21 jQuery
JavaScript数据类型的存储方法详解
2017/08/25 Javascript
JavaScript面向对象精要(上部)
2017/09/12 Javascript
bootstrap里bootstrap动态加载下拉框的实例讲解
2018/08/10 Javascript
浅析js实现网页截图的两种方式
2019/11/01 Javascript
使用Python的urllib和urllib2模块制作爬虫的实例教程
2016/01/20 Python
Python基于jieba库进行简单分词及词云功能实现方法
2018/06/16 Python
python多进程控制学习小结
2018/10/31 Python
基于CSS3实现的几个小loading效果
2018/09/27 HTML / CSS
Shopee印度尼西亚:东南亚与台湾市场最大电商平台
2018/06/17 全球购物
介绍一下SQL中union,intersect和minus
2012/04/05 面试题
电气专业应届生求职信
2013/11/01 职场文书
个人思想理论学习的自我鉴定
2013/11/30 职场文书
求职简历中个人的自我评价
2013/12/25 职场文书
祖国在我心中的演讲稿
2014/05/04 职场文书
2014年学校党建工作汇报材料
2014/11/02 职场文书
2014年卫生工作总结
2014/11/27 职场文书
经理助理岗位职责
2015/02/02 职场文书
2015年社区中秋节活动总结
2015/03/23 职场文书
JavaScript圣杯布局与双飞翼布局实现案例详解
2022/08/05 Javascript