通过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+微信接口实现运维报警
Aug 27 Python
Flask框架响应、调度方法和蓝图操作实例分析
Jul 24 Python
对python过滤器和lambda函数的用法详解
Jan 21 Python
网易2016研发工程师编程题 奖学金(python)
Jun 19 Python
django自带serializers序列化返回指定字段的方法
Aug 21 Python
Pytorch自己加载单通道图片用作数据集训练的实例
Jan 18 Python
关于Tensorflow分布式并行策略
Feb 03 Python
手把手教你进行Python虚拟环境配置教程
Feb 03 Python
Python Scrapy图片爬取原理及代码实例
Jun 12 Python
详解pandas获取Dataframe元素值的几种方法
Jun 14 Python
Keras 实现加载预训练模型并冻结网络的层
Jun 15 Python
Elasticsearch 索引操作和增删改查
Apr 19 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中__FILE__、dirname与basename用法实例分析
2014/12/01 PHP
php随机显示指定文件夹下图片的方法
2015/07/13 PHP
Smarty简单生成表单元素的方法示例
2016/05/23 PHP
php 数据结构之链表队列
2017/10/17 PHP
thinkphp框架无限级栏目的排序功能实现方法示例
2020/03/29 PHP
js获得鼠标的坐标值的方法
2013/03/13 Javascript
非常漂亮的JS+CSS图片幻灯切换特效
2013/11/20 Javascript
轻松创建nodejs服务器(6):作出响应
2014/12/18 NodeJs
JS for循环中i++ 和 ++i的区别介绍
2016/07/20 Javascript
vue mint-ui学习笔记之picker的使用
2017/10/11 Javascript
vue2.0项目实现路由跳转的方法详解
2018/06/21 Javascript
详解50行代码,Node爬虫练手项目
2019/04/22 Javascript
基于Vue实现平滑过渡的拖拽排序功能
2019/06/12 Javascript
webpack + vue 打包生成公共配置文件(域名) 方便动态修改
2019/08/29 Javascript
[02:32]DOTA2完美大师赛场馆静安体育中心观赛全攻略
2017/11/08 DOTA
python删除文件示例分享
2014/01/28 Python
python网络爬虫采集联想词示例
2014/02/11 Python
python操作xml文件示例
2014/04/07 Python
Python实现简单过滤文本段的方法
2017/05/24 Python
深入浅出分析Python装饰器用法
2017/07/28 Python
使用pandas中的DataFrame数据绘制柱状图的方法
2018/04/10 Python
Matplotlib 生成不同大小的subplots实例
2018/05/25 Python
利用python如何处理百万条数据(适用java新手)
2018/06/06 Python
python3实现点餐系统
2019/01/24 Python
python统计中文字符数量的两种方法
2019/01/31 Python
Python3+Requests+Excel完整接口自动化测试框架的实现
2019/10/11 Python
python 中的paramiko模块简介及安装过程
2020/02/29 Python
PyCharm中Matplotlib绘图不能显示UI效果的问题解决
2020/03/12 Python
韩国11街:11STREET
2018/03/27 全球购物
日本小田急百货官网:Odakyu
2018/07/19 全球购物
Feelunique澳大利亚:欧洲的化妆品零售电商
2019/12/18 全球购物
冰淇淋店创业计划书范文
2013/12/27 职场文书
网络教育自我鉴定
2014/02/04 职场文书
村长反四风问题个人对照检查材料
2014/09/21 职场文书
党的群众路线整改落实情况汇报
2014/10/28 职场文书
美容院管理规章制度
2015/08/05 职场文书