python判断是否在某个时间范围内?

需求

获取某一个时间段的日志文件列表,日志文件名格式为alert-20150301.log

我的思路

  1. 输入时间范围[20150101, 20150630]
  2. glob.iglob 获取日志路径下的文件名列表
  3. 格式化文件名列表, 截取alert-20150301.log里面的时间 log_file[6: -4], 并判断是否在所输入时间范围内, int(log_file[6: -4]) in range(20150101, 20150630) ?
  4. 如果在所给出的时间范围内, 则存入列表, 若不存在则丢弃
#!/usr/bin/python

import os
import glob

def logfile_list(log_path):
    current_path = os.getcwd()
    os.chdir(log_path)
    for log_file in glob.iglob("alert*.log"):
        if int(log_file[6:-4]) in range(20150501, 20150630):
            print(log_file)
    os.chdir(current_path)

if __name__ == "__main__":
    log_path = "/tmp/logs/"
    logfile_list(log_path)

本人是python菜鸟, 只能想到这个方法,请问还有没有其他更好的方法呢?

查看回复