Python实现查询某个目录下修改时间最新的文件示例


Posted in Python onAugust 29, 2018

本文实例讲述了Python实现查询某个目录下修改时间最新的文件。分享给大家供大家参考,具体如下:

通过Python脚本,查询出某个目录下修改时间最新的文件。

应用场景举例:比如有时候需要从ftp上拷贝自己刚刚上传的文件,那么这时就需要判断哪个文件的修改时间是最新的,即最后修改的文件是我们的目标文件。

直接撸代码:

# -*- coding: utf-8 -*-
import os
import shutil
def listdir(path, list_name): #传入存储的list
 for file in os.listdir(path):
  file_path = os.path.join(path, file)
  if os.path.isdir(file_path):
   listdir(file_path, list_name)
  else:
   list_name.append((file_path,os.path.getctime(file_path)))
def newestfile(target_list):
 newest_file = target_list[0]
 for i in range(len(target_list)):
  if i < (len(target_list)-1) and newest_file[1] < target_list[i+1][1]:
   newest_file = target_list[i+1]
  else:
   continue
 print('newest file is',newest_file)
 return newest_file
#p = r'C:\Users\WMB\700c-4'
p = r'C:\Users\Administrator\Desktop\img'
list = []
listdir(p, list)
new_file = newestfile(list)
print('from:',new_file[0])
print('to:',shutil.copy(new_file[0], 'C:\\Users\\Administrator\\Desktop\\img\\a.xml'))

运行结果:

('newest file is', ('C:\\Users\\Administrator\\Desktop\\img\\logo.gif', 1535508866.833419))
('from:', 'C:\\Users\\Administrator\\Desktop\\img\\logo.gif')
('to:', None)

方法说明:

def listdir(path, list_name): #传入存储的list
 for file in os.listdir(path):
  file_path = os.path.join(path, file)
  if os.path.isdir(file_path): #如果是目录,则递归执行该方法
   listdir(file_path, list_name)
  else:
    list_name.append((file_path,os.path.getctime(file_path))) #把文件路径,文件创建时间加入list中
def newestfile(target_list): #传入包含文件路径,文件创建时间的list
 newest_file = target_list[0] #冒泡算法找出时间最大的
 for i in range(len(target_list)):
  if i < (len(target_list)-1) and newest_file[1] < target_list[i+1][1]:
   newest_file = target_list[i+1]
  else:
   continue
 print('newest file is',newest_file)
 return newest_file
shutil.copy(new_file[0], 'C:\\Users\\Administrator\\Desktop\\img\\a.xml') #文件拷贝

补充:shutil.copy(source, destination)的使用说明

shutil.copy(source, destination)(这种复制形式使用的前提是必须要有 os.chdir(你要处理的路径)

source/destination 都是字符串形式的路劲,其中destination是:

  • 1、可以是一个文件的名称,则将source文件复制为新名称的destination
  • 2、可以是一个文件夹,则将source文件复制到destination中
  • 3、若这个文件夹不存在,则将source目标文件内的内容复制到destination中

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python操作Oracle数据库的简单方法和封装类实例
May 07 Python
对python 生成拼接xml报文的示例详解
Dec 28 Python
几行Python代码爬取3000+上市公司的信息
Jan 24 Python
Python CVXOPT模块安装及使用解析
Aug 01 Python
Django中使用session保持用户登陆连接的例子
Aug 06 Python
在django模板中实现超链接配置
Aug 21 Python
Python实现的爬取豆瓣电影信息功能案例
Sep 15 Python
Pytorch中的variable, tensor与numpy相互转化的方法
Oct 10 Python
Python实现新型冠状病毒传播模型及预测代码实例
Feb 05 Python
解决springboot yml配置 logging.level 报错问题
Feb 21 Python
浅谈Python中文件夹和python package包的区别
Jun 01 Python
python/golang实现循环链表的示例代码
Sep 14 Python
有关Python的22个编程技巧
Aug 29 #Python
Python实现多线程的两种方式分析
Aug 29 #Python
Python运维自动化之nginx配置文件对比操作示例
Aug 29 #Python
python单例模式实例解析
Aug 28 #Python
Python3.7实现中控考勤机自动连接
Aug 28 #Python
python实现遍历文件夹修改文件后缀
Aug 28 #Python
Python绘制正余弦函数图像的方法
Aug 28 #Python
You might like
咖啡豆要不要放冰箱的原因
2021/03/04 冲泡冲煮
带你了解PHP7 性能翻倍的关键
2015/11/19 PHP
HR vs CL BO3 第二场 2.13
2021/03/10 DOTA
Javascript 生成指定范围数值随机数
2009/01/09 Javascript
用JQuery 实现AJAX加载XML并解析的脚本
2009/07/25 Javascript
jQuery 判断元素上是否绑定了事件
2009/10/28 Javascript
基于jquery的修改当前TAB显示标题的代码
2010/12/11 Javascript
js arguments对象应用介绍
2012/11/28 Javascript
原生javascript实现获取指定元素下所有后代元素的方法
2014/10/28 Javascript
jquery单选框radio绑定click事件实现方法
2015/01/14 Javascript
jQuery实现checkbox列表的全选、反选功能
2016/11/24 Javascript
浅析前端路由简介以及vue-router实现原理
2018/06/01 Javascript
JS+HTML5 Canvas实现简单的写字板功能示例
2018/08/30 Javascript
原生JS实现动态添加新元素、删除元素方法
2019/05/05 Javascript
简单了解three.js 着色器材质
2020/08/03 Javascript
在react-antd中弹出层form内容传递给父组件的操作
2020/10/24 Javascript
[00:30]明星选手化身超级英雄!2018DOTA2亚洲邀请赛全明星赛来临!
2018/04/06 DOTA
详解Python设计模式编程中观察者模式与策略模式的运用
2016/03/02 Python
Python选课系统开发程序
2016/09/02 Python
Python subprocess模块功能与常见用法实例详解
2018/06/28 Python
强悍的Python读取大文件的解决方案
2019/02/16 Python
python监控进程状态,记录重启时间及进程号的实例
2019/07/15 Python
在Python中使用MySQL--PyMySQL的基本使用方法
2019/11/19 Python
python with (as)语句实例详解
2020/02/04 Python
python图形开发GUI库wxpython使用方法详解
2020/02/14 Python
python向企业微信发送文字和图片消息的示例
2020/09/28 Python
优纳科技软件测试面试题
2012/05/15 面试题
手术室护士自我鉴定
2013/10/14 职场文书
2014年人大工作总结
2014/12/10 职场文书
评职称个人总结
2015/03/05 职场文书
公司庆典主持词
2015/07/04 职场文书
奖学金主要事迹范文
2015/11/04 职场文书
幼儿园教师心得体会范文
2016/01/21 职场文书
申论不会写怎么办?教您掌握这6点思维和原则
2019/07/17 职场文书
详解Html5项目适配系统深色模式方案总结
2021/04/14 HTML / CSS
小程序实现文字循环滚动动画
2021/06/14 Javascript