python,如何查找一个文件夹里的最新产生的文件?并且得到最新文件生成的时间?

如题所述

# -*- coding:UTF-8 -*-
import os,os.path,datetime
base_dir="c:\\Windows\\"
l=os.listdir(base_dir)
l.sort(key=lambda fn: os.path.getmtime(base_dir+fn) if not os.path.isdir(base_dir+fn) else 0)
d=datetime.datetime.fromtimestamp(os.path.getmtime(base_dir+l[-1]))
print('最后改动的文件是'+l[-1]+",时间:"+d.strftime("%Y年%m月%d日 %H时%M分%S秒"))



>>>
最后改动的文件是WindowsUpdate.log,生成时间:2013年04月10日 12时18分09秒



这个算较简的方法。注意第5、6行在同一行上,百度自动断了。

python 3.2代码

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-10
这个问题很简单,只要你掌握python的os模块的使用,系统相关的问题可以很容易得到。 />进口OS
#os.listdir列出当前路径

#os.path.isfile判断文件的状态是否是一个文件

#os.stat />:#os.stat(项目)。 st_size档案大小

D = [(os.stat(项)。st_size的产品)项目os.listdir('。')如果os.path.isfile(项目)]
> d.sort(扭转= TRUE)#按文件大小排序

[[1]我在D [3]#第一三和删除文件名

递归遍历子文件夹,使用os.walk,但要做到一点点额外的处理。本回答被网友采纳
第2个回答  2013-04-10
os.stat可以获取文件属性,检测时间戳,问题就都解决了
第3个回答  2013-04-10
ls -al +文件目录