Python 类型错误:'&燃气轮机';在';datetime.date';和';str';
在下面的代码中,我试图验证从目录中删除的文件是否为新文件,并且应该开始处理它。我想将新文件的创建日期与上次处理的文件的创建日期进行比较。最后一个创建日期存储在目录中的一个文件中(如果您有更好的存储日期的想法,我愿意接受)。我的问题是,存储在文件中的日期是一个字符串,我无法将新日期与旧日期进行比较。底部的if语句是引发错误的语句。我正在比较的日期是NewCreateTime类型 LastCreateTime的类型为 如何将两个日期转换为datetime.objects或比较datetime字符串Python 类型错误:'&燃气轮机';在';datetime.date';和';str';,python,string,datetime,Python,String,Datetime,在下面的代码中,我试图验证从目录中删除的文件是否为新文件,并且应该开始处理它。我想将新文件的创建日期与上次处理的文件的创建日期进行比较。最后一个创建日期存储在目录中的一个文件中(如果您有更好的存储日期的想法,我愿意接受)。我的问题是,存储在文件中的日期是一个字符串,我无法将新日期与旧日期进行比较。底部的if语句是引发错误的语句。我正在比较的日期是NewCreateTime类型 LastCreateTime的类型为 如何将两个日期转换为datetime.objects或比较datetime字符串
def is_file_ready(File_Name, Path, Ready, cTimeFile):
NCTtstamp = path.getctime(File_Name)#create date of new file found in ready dir.
NCTobj = str(datetime.fromtimestamp(NCTtstamp))
NewCreateTime = datetime.strptime(NCTobj, '%Y-%m-%d %H:%M:%S.%f')
print('NewCreateTime is of type')
print(type(NewCreateTime))
LastCreateTimeFile = path.join('/', Path, Ready, cTimeFile)
try:
with open(LastCreateTimeFile, 'r') as lct: # get the last create time
LCTline = lct.readline()
except FileNotFoundError as fnferr:
print('COULD NOT READ FILE!:\n', + File_Name + '\n\n', fnferr)
LCTstr = LCTline.rstrip()
LastCreateTime = datetime.strptime(LCTstr, '%Y-%m-%d %H:%M:%S.%f')
print('LastCreateTime is of type')
print(type(LastCreateTime))
if NewCreateTime > LastCreateTimeFile:
if NewCreateTime > LastCreateTimeFile:
return(NewCreateTime, True, LastCreateTime)
您不是将
NewCreateTime
与LastCreateTime
进行比较,而是将其与类型不同的LastCreateTime文件进行比较
更改:
if NewCreateTime > LastCreateTimeFile:
到
打字错误:您想与“LastCreateTime”进行比较,但您使用了文件路径“LastCreateTimile”。谢谢您盯着它看了太久,没有注意到这一点。
if NewCreateTime > LastCreateTime: