import os import re import sys cwd = os.path.dirname(os.path.abspath(sys.argv[0])) zipFiles = [f for f in os.listdir(cwd) if not f.startswith('610') and f.endswith('.zip')] variables = list(set(['_'.join(f.split('_')[:-1]) for f in zipFiles])) sortByVar = sorted(variables, key=lambda x: x.split('_')[0]) # Sort by variable sortByPer = sorted(sortByVar, key=lambda x: x.split('_')[-1]) # Sort by forecast period for var in sortByPer: filteredList = list(filter(lambda elem: re.match(var, elem), zipFiles)) filteredDates = [int(x.split('.')[0].split('_')[-1]) for x in filteredList] start, end = min(filteredDates), max(filteredDates) print(var+':', start, '-', end) ##for zfile in zipFiles: ## if zfile.endswith('.zip.zip'): ## os.rename(zfile, zfile.replace('.zip.zip', '.zip')) ## print(zfile, '-->', zfile.replace('.zip.zip', '.zip'))