我有一个搜索特定文件夹的函数,查找使用特定前缀创建的文件的最新日期,并返回当天写入的第一个(最早)文件。
import os
def find_earliest_file(prefix, folder):
"""
Searches the specified folder for files with the specified prefix, and returns the earliest file (by timestamp)
for the newest date.
"""
newest_date = None
earliest_file = None
for file in os.listdir(folder):
if file.startswith(prefix):
timestamp = os.path.getctime(os.path.join(folder, file))
file_date = timestamp.date()
if newest_date is None or file_date > newest_date:
newest_date = file_date
earliest_file = file
elif file_date == newest_date and timestamp < os.path.getctime(os.path.join(folder, earliest_file)):
earliest_file = file
return earliest_file
然而,我得到了以下错误,我不明白为什么。..
属性错误:“float”对象没有属性“date”。单元格[48],第12行,最新文件文件日期= www.example.com ()
file_date如何成为float?
有线索吗?
1条答案
按热度按时间2ledvvac1#
Python文档:
返回值是一个数字,给出了自epoch以来的秒数(参见time模块)。
按照建议使用
time
模块对其进行操作。您可以使用gmtime
或localtime
分别转换为UTC和本地时间。