我不知何故陷入了逻辑思维。
我将比较这两个州的日期:
全部包括假期
这个月/一天的哪个学期我怎么查?
current_month = datetime.datetime.now().month
current_year = datetime.datetime.now().year
current_day = datetime.datetime.now().day
if current_month>=10 and current_day>=15:
#winter semester但不知何故我做得太混乱了。对于我的问题,有任何用于日期比较的python吗?
发布于 2013-09-03 18:06:16
你可以制作夏天的日期:
current = datetime.date.today()
summer = current.replace(month=4, day=16), current.replace(month=10, day=14)
if summer[0] <= current <= summer[1]:
# summer semester
else:
# winter semester这使用datetime.date()对象而不是datetime.datetime(),因为时间部分在这里是不相关的。date.replace()调用确保了本年度的重用。
当然,这一切都假定,夏季学期每年的开始和结束日期是相同的。
演示:
>>> import datetime
>>> current = datetime.date.today()
>>> current
datetime.date(2013, 9, 3)
>>> summer = current.replace(month=4, day=16), current.replace(month=10, day=14)
>>> summer[0] <= current <= summer[1]:
True发布于 2013-09-03 18:08:39
一种方法是创建一个查找表(当您有许多不相交的时间间隔时,这通常是一个好主意,但每个时间间隔都是离散的,就像一天一样)。
另一个办法是测试它是否是夏天--4月16日之后,10月15日之前。如果不是夏天,那就是冬天。当你有两个间隔--如果你有更多的话,分解(杂乱无章的代码)的话,效果会很好。
https://stackoverflow.com/questions/18598697
复制相似问题