我需要查找执行代码当天添加到目录中的所有文件的名称。例如,如果我今天在10/29/2019执行代码,则需要列出其创建日期也是10/29/2019的所有文件的列表。
我可以使用os.stat
获得每个文件的创建时间戳。比较每个文件的时间戳很慢。这样,代码仅花费5分钟以上的时间即可找到文件!
有什么有效的解决方案吗?
感谢您提供任何提示/解决方案!
from datetime import date
from datetime import datetime
import os
import time
files_created = []
today = date.today().strftime('%Y-%m-%d')
for filename in os.listdir("C:/Users/PATH/TO/DIR"):
t_stamp = os.path.getctime("C:/Users/PATH/TO/DIR/{}".format(filename))
t_stamp = datetime.utcfromtimestamp(t_stamp).strftime('%Y-%m-%d')
if today == t_stamp:
print("It was created the same date")
files_created.append(filename)
else:
print("It was not created the same date")
print(files_created)
date.today().strftime('%Y-%m-%d')
将为您提供类似于今天日期的“ 2019-10-29”的字符串。 datetime.utcfromtimestamp(t_stamp).strftime('%Y-%m-%d')
将为您提供一个字符串,类似于任何文件的创建日期。然后,您可以比较两者。
编辑,因此它还会创建一个包含所有文件名的列表。