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

yipeiwu_com7年前Python基础

需求是这样的,我从本科到现在硬盘里存了好多照片,本来是按类别分的,有一天,我突然想,要是能按照时间来分类可能会更好。可以右键查看照片的属性,看它的修改日期,从而分类,但是十几个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设计】。

相关文章

Django中cookie的基本使用方法示例

前言 基于 Internet的各种服务系统应运而生,建立商业站点或者功能比较完善的个人站点,常常需要记录访问者的一些信息;论坛作为 Internet发展的产物之一,在 Internet...

python tornado微信开发入门代码

本文实例为大家分享了python tornado微信开发的具体代码,供大家参考,具体内容如下 #微信入门代码 #!/usr/bin/env python2.7 # -*- codin...

Python小白必备的8个最常用的内置函数(推荐)

Python给我们内置了大量功能函数,官方文档上列出了69个,有些是我们是平时开发中经常遇到的,也有一些函数很少被用到,这里列举被开发者使用最频繁的8个函数以及他们的详细用法 print...

python使用opencv对图像mask处理的方法

python使用opencv对图像mask处理的方法

MASK图像掩膜处理 在图像操作中有时候会用到掩膜处理,如果使用遍历法掩膜图像ROI区域对于python来讲是很慢的,所以我们要找到一种比较好的算法来实现掩膜处理。 假设我们有一副图...

python中正则表达式的使用方法

本文主要关于python的正则表达式的符号与方法。 findall: 找寻所有匹配,返回所有组合的列表 search: 找寻第一个匹配并返回 sub: 替换符合规律的内容,并返回替换后的...