用Python比较两个日期
我需要用一个IF语句来比较两个日期,但出于某种奇怪的原因,我做不到。
我的代码是:
date1 = strftime("%Y-%m-%d")
d2 = os.path.getmtime('/tmp/file')
date2 = datetime.date.fromtimestamp(d2)
if date1 == date2 :
print 'same date'
else:
print 'different date'
我不知道为什么,打印出来的日期是一样的,但用这个IF语句却显示“日期不同”。
可能这是个新手问题,抱歉!
谢谢!
2 个回答
2
time.strftime
会返回一个字符串类型的对象datetime.date.fromtimestamp
会返回一个日期类型的对象
所以 date1
和 date2
是不同类型的对象。比较不同类型的对象时,结果总是会是 False
(这就是所谓的强类型特性)
5
date1
是一个字符串,而 date2
是一个日期对象。也许你想写的是 date1 = datetime.date.today()
,意思是把今天的日期赋值给 date1
。