首页 > 编程语言 > 详细

python-对目录下的文件按时间排序

时间:2021-05-11 17:23:39      阅读:16      评论:0      收藏:0      [点我收藏+]

1.按照时间来排序

def get_file_list(file_path):
    dir_list = os.listdir(file_path)
    if not dir_list:
        return
    else:
        # 注意,这里使用lambda表达式,将文件按照最后修改时间顺序升序排列
        # os.path.getmtime() 函数是获取文件最后修改时间
        # os.path.getctime() 函数是获取文件最后创建时间
        dir_list = sorted(dir_list,key=lambda x: os.path.getmtime(os.path.join(file_path, x)))
        # print(dir_list)
        return dir_list

2.获取最后修改时间的文件路径

import os

url=D:\PycharmProjects\Ambulance_Api\logs
lists=os.listdir(url)
print(lists)
lists.sort(key=lambda fn: os.path.getmtime(url+\\+fn))
filepath=os.path.join(url,lists[-1])
print(filepath)

3.按照文件名字来排序

1)用库函数sorted()对字符串排序,它的对象是字符
2)用函数sort()对数字排序,它的对象是数字,如果读取文件的话,需要进行处理(把文件后缀名‘屏蔽’)

 

import os

img_path =./img/
img_list =sorted(os.listdir(img_path))    #文件名按字母排序
img_nums =len(img_list)
for i in range(img_nums):
img_name = img_path + img_list[i]
print(img_name)

注意:顺便提下,sort函数中用到了匿名函数(key = lambda x:int(x[:-4])),其作用是将后缀名‘.jpg‘“屏蔽”(因为‘.jpg’是4个字符,所以[:-4]的含义是从文件名开始到倒数第四个字符为止)

python-对目录下的文件按时间排序

原文:https://www.cnblogs.com/lnd-blog/p/14755611.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!