Python 查找修改日期最近的文件
Python Find a file with closest modified date
我有一个给定的文件需要在文件夹结构中找到。文件结构中可以并且将会有重复的文件名,因此我还需要 return 修改日期最接近给定日期的文件。简单地 returning 如下所示的最新文件不符合我的需要。这是无法 google 并且可能 return 有任何帮助的问题之一。
def findClosestFile(name, path, date):
result=[]
for root, dirs, files in os.walk(path):
if name in files:
result.append(os.path.join(root, name))
return max(result, key=os.path.getmtime))
如果日期参数应该接近文件日期,则值
abs(date-os.path.getmtime(your_path))
应该越小越好。因此,将函数的最后一行更改为
return min(result, key=lambda x:abs(date-os.getmtime(x)))
应该可以解决问题。
我有一个给定的文件需要在文件夹结构中找到。文件结构中可以并且将会有重复的文件名,因此我还需要 return 修改日期最接近给定日期的文件。简单地 returning 如下所示的最新文件不符合我的需要。这是无法 google 并且可能 return 有任何帮助的问题之一。
def findClosestFile(name, path, date):
result=[]
for root, dirs, files in os.walk(path):
if name in files:
result.append(os.path.join(root, name))
return max(result, key=os.path.getmtime))
如果日期参数应该接近文件日期,则值
abs(date-os.path.getmtime(your_path))
应该越小越好。因此,将函数的最后一行更改为
return min(result, key=lambda x:abs(date-os.getmtime(x)))
应该可以解决问题。