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中的偏函数
Apr 27 Python
python append、extend与insert的区别
Oct 13 Python
详解python的数字类型变量与其方法
Nov 20 Python
Python3.6简单反射操作示例
Jun 14 Python
python3+pyqt5+itchat微信定时发送消息的方法
Feb 20 Python
Python和Java的语法对比分析语法简洁上python的确完美胜出
May 10 Python
python实现各种插值法(数值分析)
Jul 30 Python
python读写文件write和flush的实现方式
Feb 21 Python
python多维数组分位数的求取方式
Mar 03 Python
python读取当前目录下的CSV文件数据
Mar 11 Python
Django:使用filter的pk进行多值查询操作
Jul 15 Python
Python机器学习之逻辑回归
May 11 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
php 5.6版本中编写一个PHP扩展的简单示例
2015/01/20 PHP
Yii2增加验证码步骤详解
2016/04/25 PHP
PHP实现的激活用户注册验证邮箱功能示例
2017/06/06 PHP
详谈PHP中public,private,protected,abstract等关键字的用法
2017/12/31 PHP
Yii2框架数据验证操作实例详解
2018/05/02 PHP
基于ThinkPHP5框架使用QueryList爬取并存入mysql数据库操作示例
2019/05/25 PHP
javascript object array方法使用详解
2012/12/03 Javascript
js的隐含参数(arguments,callee,caller)使用方法
2014/01/28 Javascript
使用js显示当前时间示例
2014/03/02 Javascript
javascript中的五种基本数据类型
2015/08/26 Javascript
vue制作加载更多功能的正确打开方式
2016/10/12 Javascript
Ajax跨域实现代码(后台jsp)
2017/01/21 Javascript
layui当点击文本框时弹出选择框,显示选择内容的例子
2019/09/02 Javascript
vue跳转方式(打开新页面)及传参操作示例
2020/01/26 Javascript
原生javascript单例模式的应用实例分析
2020/02/23 Javascript
在Vue 中实现循环渲染多个相同echarts图表
2020/07/20 Javascript
[06:50]DSPL次级职业联赛十强晋级之路
2014/11/18 DOTA
Python变量和字符串详解
2017/04/29 Python
python抓取网站的图片并下载到本地的方法
2018/05/22 Python
对python字典元素的添加与修改方法详解
2018/07/06 Python
Python + OpenCV 实现LBP特征提取的示例代码
2019/07/11 Python
Flask框架学习笔记之模板操作实例详解
2019/08/15 Python
Python pandas.DataFrame 找出有空值的行
2019/09/09 Python
Python3开发实例之非关系型图数据库Neo4j安装方法及Python3连接操作Neo4j方法实例
2020/03/18 Python
Python 创建TCP服务器的方法
2020/07/28 Python
Html5 web本地存储实例详解
2016/07/28 HTML / CSS
手机端用rem+scss做适配的详解
2017/11/15 HTML / CSS
英国评分最高的女性剃须刀订阅盒:FFS Beauty
2018/01/25 全球购物
中专毕业自我鉴定
2013/10/16 职场文书
学生操行评语大全
2014/04/24 职场文书
开业庆典活动策划方案
2014/09/21 职场文书
意外死亡赔偿协议书
2014/10/14 职场文书
新闻稿件写作范文
2015/07/18 职场文书
放假通知怎么写
2015/08/18 职场文书
2016党员党章学习心得体会
2016/01/14 职场文书
openstack云计算keystone组件工作介绍
2022/04/20 Servers