Python 如何判断一个日期是否介于其他两个日期之间?
我有以下代码:Python 如何判断一个日期是否介于其他两个日期之间?,python,compare,date,Python,Compare,Date,我有以下代码: if date in (start, end): print 'in between' else: print 'No!' 日期、开始和结束都是1/1格式的变量。我应该怎么做才能打印出正确的结果?我试着把日期定在10月2日,从3月14日开始,到11月7日结束,打印的是“否!”,这意味着它运行不正常。我想必须将它们格式化为日期格式,然后进行比较。使用datetime.date: > >>>d1=日期(2011年3月28日) >>>d2=日期(20
if date in (start, end):
print 'in between'
else:
print 'No!'
日期、开始和结束都是1/1格式的变量。我应该怎么做才能打印出正确的结果?我试着把日期定在10月2日,从3月14日开始,到11月7日结束,打印的是“否!”,这意味着它运行不正常。我想必须将它们格式化为日期格式,然后进行比较。使用
datetime.date
:
或者在您的程序中:>> >>>d1=日期(2011年3月28日) >>>d2=日期(2011年3月22日) >>>d3=日期(2011年4月3日) >>>d2
from datetime import date
d1 = date(2011, 3, 28)
d2 = date(2011, 3, 22)
d3 = date(2011, 4, 3)
if d2 < d1 < d3:
print 'in between'
else:
print 'No!'
from datetime导入日期
d1=日期(2011年3月28日)
d2=日期(2011年3月22日)
d3=日期(2011年4月3日)
如果d2
如果将所有日期转换为,则可以编写以下内容:
if start <= date <= end:
print "in between"
else:
print "No!"
如果开始因为您仍然不满意,我有另一个答案给您。不使用日期时间和年份
它只使用内置元组并比较它们:
d1 = (3, 28)
d2 = (3, 31)
d3 = (4, 2)
if d1 < d2 < d3:
print("BETWEEN!")
else:
print("NOT!")
你还试过什么?既然这不起作用,您认为还有哪些代码可以起作用?你在教程中读过
吗?我也使用了startd1 = (3, 28)
d2 = (3, 31)
d3 = (4, 2)
if d1 < d2 < d3:
print("BETWEEN!")
else:
print("NOT!")
day = 16
month = 4
d = (month, day)
from datetime import datetime
date_format = "%m/%d/%Y"
a = datetime.strptime('8/18/2008', date_format)
b = datetime.strptime('9/26/2007', date_format) # Date to be checked
c = datetime.strptime('9/25/2008', date_format)
d = datetime.strptime('8/18/2008', date_format) #Date entered here should always be the same as 'a'
delta1 = b - a
delta2 = c - b
delta3 = d - a
if delta1.days >= delta3.days and delta2.days >= delta3.days:
print 'In between'
else:
print 'Not in between'