Python select 文件夹中最近 12 小时新生成的文件
Python select last 12 hours new generated files in a folder
我正在尝试获取过去 12 小时内的所有文件,文件名和列表格式如下:
C:\myproject\Attendance_aaa_2021-07-22-4hr.csv 07/22/2021 04:20 AM Modified
C:\myproject\Attendance_bbb_2021-07-23-16hr.csv 07/23/2021 16:20 PM Modified
C:\myproject\Attendance_ccc_2021-07-26-4hr.csv 07/26/2021 04:15 AM Modified
C:\myproject\Attendance_ddd_2021-07-26-16h.csv 07/26/2021 16:15 AM Modified
C:\myproject\Attendance_eee_2021-07-26-16h.csv 07/26/2021 16:35 AM Modified
这是我的代码:
import os
path_dataset = r'C:\myproject\'
def get_file(path_dataset):
files = os.listdir(path_dataset) #check file list
files.sort() #sort file
file_list = []
for file in files:
if (file.startswith("Attendance")) & (file.endswith(".csv")):
f_name = str(file)
tr = '\'
filename = path_dataset + tr + f_name
file_list.append(filename)
return (file_list)
get_file(path_dataset)
但是,此代码将 return 文件夹中的所有文件。我正在考虑使用以下代码来识别文件修改时间:
last12HourDateTime = datetime.today() - timedelta(hours = 12)
这样所有最近 12 小时内的文件都将列在我的 file_list 中。
谁能帮忙解决这个问题,如何整合文件列表的时间排序?非常感谢!
import os
import time
path_dataset = 'C:\myproject\'
twelve = time.time() - 12 * 60 * 60
def get_file(path_dataset):
files = os.listdir(path_dataset) #check file list
file_list = []
for file in files:
path = path.dataset + "\" + file
if file.startswith("Attendance") and file.endswith(".csv") and os.path.getmtime(path) > twelve:
file_list.append(path)
return file_list
print(get_file(path_dataset))
我正在尝试获取过去 12 小时内的所有文件,文件名和列表格式如下:
C:\myproject\Attendance_aaa_2021-07-22-4hr.csv 07/22/2021 04:20 AM Modified
C:\myproject\Attendance_bbb_2021-07-23-16hr.csv 07/23/2021 16:20 PM Modified
C:\myproject\Attendance_ccc_2021-07-26-4hr.csv 07/26/2021 04:15 AM Modified
C:\myproject\Attendance_ddd_2021-07-26-16h.csv 07/26/2021 16:15 AM Modified
C:\myproject\Attendance_eee_2021-07-26-16h.csv 07/26/2021 16:35 AM Modified
这是我的代码:
import os
path_dataset = r'C:\myproject\'
def get_file(path_dataset):
files = os.listdir(path_dataset) #check file list
files.sort() #sort file
file_list = []
for file in files:
if (file.startswith("Attendance")) & (file.endswith(".csv")):
f_name = str(file)
tr = '\'
filename = path_dataset + tr + f_name
file_list.append(filename)
return (file_list)
get_file(path_dataset)
但是,此代码将 return 文件夹中的所有文件。我正在考虑使用以下代码来识别文件修改时间:
last12HourDateTime = datetime.today() - timedelta(hours = 12)
这样所有最近 12 小时内的文件都将列在我的 file_list 中。 谁能帮忙解决这个问题,如何整合文件列表的时间排序?非常感谢!
import os
import time
path_dataset = 'C:\myproject\'
twelve = time.time() - 12 * 60 * 60
def get_file(path_dataset):
files = os.listdir(path_dataset) #check file list
file_list = []
for file in files:
path = path.dataset + "\" + file
if file.startswith("Attendance") and file.endswith(".csv") and os.path.getmtime(path) > twelve:
file_list.append(path)
return file_list
print(get_file(path_dataset))