通过python将大量文件按修改时间分类的方法
作者:AlexAcce 发布时间:2023-04-11 00:26:03
标签: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);
来源:https://blog.csdn.net/Alex1syyl/article/details/53997054


猜你喜欢
- Bootstrap简介Bootstrap,来自 Twitter,是目前最受欢迎的前端框架。Bootstrap 是基于 HTML、CSS、JA
- 首先,定义一个变量:(以下以本人写的为例)首先定义一个变量:然后,给变量赋值:如果想要修改数据,主要代码如下:然后界面上要记得绑定数据id:
- 那你也许会问及,怎样获取当前系统日期的最大时间值,如yyyy-MM-dd 23:59:59.997。 我们可以使用DATEADD函数,来实现
- 在迁移学习finetune时我们通常需要冻结前几层的参数不参与训练,在Pytorch中的实现如下:class Model(nn.Module
- 简介subprocess是子流程,即进程的意思,该模块可以启动一个新进程,并连接到它们的输入/输出/错误管道,从而获取返回值。常用方法和接口
- 本文实例为大家分享了微信小程序实现吸顶盒效果的具体代码,供大家参考,具体内容如下html部分 <!-- 列表 -->&
- <SCRIPT LANGUAGE="JavaScript"><!-- Beginfunction si
- 在python3.6版本中去掉了os.path.walk()函数os.walk()函数声明:walk(top,topdown=True,on
- jquery获取img的src值实例介绍 https://www.jb51.net/article/154746.htm获取: $(&quo
- 前言由于项目需要生成多条数据,并保存到数据库当中,在程序中封装了一个List集合对象,然后需要把该集合中的实体插入到数据库中,项目使用了Sp
- 背景最近在学习MIT的分布式课程6.824的过程中,使用Go实现Raft协议时遇到了一些问题。分享出来供大家参考学习,下面话不多说了,来一起
- 无参修饰 ,无参数时不需要调用def log1(func): func()@log1def test(): prin
- 相比于逻辑回归,在很多情况下,SVM算法能够对数据计算从而产生更好的精度。而传统的SVM只能适用于二分类操作,不过却可以通过核技巧(核函数)
- 前言:在自动化测试中,经常需要查找操作文件,比如说查找配置文件(从而读取配置文件的信息),查找测试报告(从而发送测试报告邮件),经常要对大量
- 1、数据集简述: 虽然有主流庞大的COCO、VOC数据集,
- 本文实例讲述了php生成curl命令行的方法。分享给大家供大家参考,具体如下:示例:curl "http://localhost/
- 一、文件的打开和创建>>> f = open('/tmp/test.txt')>>> f
- 利用oracle的dbms_random包结合rownum来实现,示例如下,随机取499户:select * from ( select *
- vue router路由嵌套不显示问题的解决方法,具体内容如下路由嵌套,vue2.0 router中嵌套路由不成功,如何解决?我先说下我的需
- CSS Hack是在标准CSS没办法兼容各浏览器显示效果时才会用上的补救方法,在各浏览器厂商解析CSS没有达成一致前,我们只能用这样的方法来