首页 > 代码库 > python之查询指定目录下的最新文件

python之查询指定目录下的最新文件

使用os模块查询指定目录下的最新文件
 1 import os
 2 
 3 # 输入目录路径,输出最新文件完整路径
 4 def find_new_file(dir):
 5     ‘‘‘查找目录下最新的文件‘‘‘
 6     file_lists = os.listdir(dir)
 7     file_lists.sort(key=lambda fn: os.path.getmtime(dir + "\\" + fn)
 8                     if not os.path.isdir(dir + "\\" + fn) else 0)
 9     print(最新的文件为:  + file_lists[-1])
10     file = os.path.join(dir, file_lists[-1])
11     print(完整路径:, file)
12     return file
13 
14 # 函数调用
15 dir = D:\\test_data\\auto_test_result
16 find_new_file(dir)

运行结果:

1 最新的文件为: result_20170807_192514.html
2 完整路径: D:\test_data\auto_test_result\result_20170807_192514.html

 

文件操作小结:
 1 print("#" * 30)
 2 n = 0
 3 dir = D:\\test_data\\1
 4 # 获取指定目录下的文件列表包括文件和目录
 5 file_lists = os.listdir(dir)
 6 print("1)获取指定目录下的文件列表:", file_lists)
 7 # 获取文件创建时间
 8 file_time = os.path.getmtime(dir + "\\" + file_lists[-1])
 9 print("2)文件创建时间:", file_time)
10 # 判断文件是否是目录
11 file_is_dir = os.path.isdir(dir + "\\" + file_lists[-1])
12 print("3)文件是否是目录:", file_is_dir)
13 # 组装文件完整路径
14 file_path = os.path.join(dir, file_lists[-1])
15 print("4)文件的完整路径:", file_path)
16 # 获取文件大小
17 file_size = os.path.getsize(file_path)
18 print("5)文件大小:", file_size)

运行结果:

1 1)获取指定目录下的文件列表: [2-1, 2-1.txt, 2-2, 2-2.txt]
2 2)文件创建时间: 1500290284.2089198
3 3)文件是否是目录: False
4 4)文件的完整路径: D:\test_data\1\2-2.txt
5 5)文件大小: 3

 

python之查询指定目录下的最新文件