import os.path class MiscUtils(object): @staticmethod def isOutdated(listInputFiles,listOutputFiles): thresholdTimeStamp=None if len(listInputFiles) == 0: return False if len(listOutputFiles) == 0: return True for f in listOutputFiles: t=os.path.getmtime(f) if thresholdTimeStamp is None: thresholdTimeStamp = t if t < thresholdTimeStamp: thresholdTimeStamp = t for f in listInputFiles: t=os.path.getmtime(f) if t > thresholdTimeStamp: return True return False @staticmethod def getListSpecFiles(listSpecFiles,path): for dirEntry in os.listdir(path): dirEntryPath = os.path.join(path, dirEntry) if os.path.isfile(dirEntryPath) and dirEntryPath.endswith(".spec"): listSpecFiles.append(dirEntryPath) elif os.path.isdir(dirEntryPath): MiscUtils.getListSpecFiles(listSpecFiles,dirEntryPath) if __name__=="__main__": listInputFiles=["SpecParser.py","Logger.py"] listOutputFiles=["Main.py"] print MiscUtils.isOutdated(listInputFiles, listOutputFiles)