通过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实现多线程网页下载器
Apr 15 Python
Pandas分组与排序的实现
Jul 23 Python
Flask框架模板渲染操作简单示例
Jul 31 Python
django 自定义过滤器(filter)处理较为复杂的变量方法
Aug 12 Python
Python如何用filter函数筛选数据
Mar 05 Python
Python日志logging模块功能与用法详解
Apr 09 Python
解决python运行启动报错问题
Jun 01 Python
在python下实现word2vec词向量训练与加载实例
Jun 09 Python
pandas创建DataFrame的7种方法小结
Jun 14 Python
python 如何设置守护进程
Oct 29 Python
python实现简易名片管理系统
Apr 11 Python
python实战之一步一步教你绘制小猪佩奇
Apr 22 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
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
2018/06/16 PHP
laravel解决迁移文件一次删除创建字段报错的问题
2019/10/24 PHP
jQuery弹出层插件简化版代码下载
2008/10/16 Javascript
javascript类继承机制的原理分析
2009/09/12 Javascript
javascript+iframe 实现无刷新载入整页的代码
2010/03/17 Javascript
详解强大的jQuery选择器之基本选择器、层次选择器
2012/02/07 Javascript
不同Jquery版本引发的问题解决
2013/10/14 Javascript
JQuery中dataGrid设置行的高度示例代码
2014/01/03 Javascript
jQuery应用之jQuery链用法实例
2015/01/19 Javascript
javascript中Array数组的迭代方法实例分析
2015/02/04 Javascript
javascript中的正则表达式使用指南
2015/03/01 Javascript
js给selected添加options的方法
2015/05/06 Javascript
JS实现的新浪微博大厅文字内容滚动效果代码
2015/11/05 Javascript
NodeJS使用七牛云存储上传文件的方法
2017/07/24 NodeJs
ES6学习教程之Map的常用方法总结
2017/08/03 Javascript
详细分析单线程JS执行问题
2017/11/22 Javascript
Vue不能观察到数组length的变化
2018/06/08 Javascript
Python编码爬坑指南(必看)
2016/06/10 Python
python将list转为matrix的方法
2018/12/12 Python
Pandas中DataFrame的分组/分割/合并的实现
2019/07/16 Python
简单了解django文件下载方式
2020/02/10 Python
Pandas时间序列:时期(period)及其算术运算详解
2020/02/25 Python
python剪切视频与合并视频的实现
2020/03/03 Python
Python使用matplotlib绘制圆形代码实例
2020/05/27 Python
python爬虫利用selenium实现自动翻页爬取某鱼数据的思路详解
2020/12/22 Python
详解用selenium来下载小姐姐图片并保存
2021/01/26 Python
详解css3中 text-fill-color属性
2019/07/08 HTML / CSS
荷兰街头时尚之家:Funkie House
2019/03/18 全球购物
Bibloo罗马尼亚网站:女装、男装、童装及鞋子和配饰
2019/07/20 全球购物
德国购买门票网站:ADticket.de
2019/10/31 全球购物
介绍一下sql server的安全性
2014/08/10 面试题
农田水利实习自我鉴定
2013/09/19 职场文书
工业设计专业推荐信
2013/10/29 职场文书
房租涨价通知
2015/04/23 职场文书
Pytorch可视化的几种实现方法
2021/06/10 Python
MySQL深度分页(千万级数据量如何快速分页)
2021/07/25 MySQL