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的Django框架的运行方式及处理流程
Apr 08 Python
Python实现删除文件但保留指定文件
Jun 21 Python
Python的requests网络编程包使用教程
Jul 11 Python
Python模拟鼠标点击实现方法(将通过实例自动化模拟在360浏览器中自动搜索python)
Aug 23 Python
python的paramiko模块实现远程控制和传输示例
Oct 13 Python
python如何实现int函数的方法示例
Feb 19 Python
基于python中theano库的线性回归
Aug 31 Python
Python学习笔记基本数据结构之序列类型list tuple range用法分析
Jun 08 Python
python matplotlib折线图样式实现过程
Nov 04 Python
Python selenium爬取微博数据代码实例
May 22 Python
Python Dict找出value大于某值或key大于某值的所有项方式
Jun 05 Python
Python列表元素删除和remove()方法详解
Jan 04 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
PHP7内核CGI与FastCGI详解
2019/04/14 PHP
让你的CSS像Jquery一样做筛选的实现方法
2011/07/10 Javascript
基于Jquery的开发个代阴影的对话框效果代码
2011/07/28 Javascript
优化innerHTML操作(提高代码执行效率)
2011/08/20 Javascript
jquery中的mouseleave和mouseout的区别 模仿下拉框效果
2012/02/07 Javascript
jquery图片延迟加载 前端开发技能必备系列
2012/06/18 Javascript
关闭浏览器时提示onbeforeunload事件
2013/12/25 Javascript
javascript实现Table间隔色以及选择高亮(和动态切换数据)的方法
2015/05/14 Javascript
详解JavaScript逻辑And运算符
2015/12/04 Javascript
js实现异步循环实现代码
2016/02/16 Javascript
详解Wondows下Node.js使用MongoDB的环境配置
2016/03/01 Javascript
Javascript操作表单实例讲解(下)
2016/06/20 Javascript
BootStrop前端框架入门教程详解
2016/12/25 Javascript
前端页面文件拖拽上传模块js代码示例
2017/05/19 Javascript
详解如何提高 webpack 构建 Vue 项目的速度
2017/07/03 Javascript
vue-router懒加载速度缓慢问题及解决方法
2018/11/25 Javascript
jQuery操作元素追加内容示例
2020/01/10 jQuery
vue组件入门知识全梳理
2020/09/21 Javascript
Python线程的两种编程方式
2015/04/14 Python
python爬虫之百度API调用方法
2017/06/11 Python
django 发送手机验证码的示例代码
2018/04/25 Python
python实现归并排序算法
2018/11/22 Python
详解python的四种内置数据结构
2019/03/19 Python
Pycharm+django2.2+python3.6+MySQL实现简单的考试报名系统
2019/09/05 Python
如何基于python操作excel并获取内容
2019/12/24 Python
python os.listdir()乱码解决方案
2021/01/31 Python
布鲁明戴尔百货店:Bloomingdale’s
2016/12/21 全球购物
在线购买廉价折扣书籍和小说:BookOutlet.com
2018/02/19 全球购物
全球高级音频和视频专家:HiDef Lifestyle
2019/08/02 全球购物
北京华建集团SQL面试题
2014/06/03 面试题
说一下Linux下有关用户和组管理的命令
2016/01/04 面试题
水产养殖学应届生求职信
2013/09/29 职场文书
2014年统战工作总结
2014/12/09 职场文书
关于食品安全的演讲稿范文(三篇)
2019/10/21 职场文书
导游词之澳门妈祖庙
2019/12/19 职场文书
php实例化对象的实例方法
2021/11/17 PHP