python中的日期比较 - 如何知道哪个学期日期

don*_*yor 0 python datetime date python-datetime

我在某种程度上坚持逻辑思维.

我将比较这两个州的日期:

  1. 夏季学期(16.04开课 - 14.10结束)
  2. 冬季学期(15.10开始 - 15.04结束)

都包括假期

我如何检查本月/日的学期?

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
Run Code Online (Sandbox Code Playgroud)

但我在某种程度上做得太乱了.是否有任何python库用于我的问题的日期比较?

Mar*_*ers 9

您可以生成夏季日期:

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
Run Code Online (Sandbox Code Playgroud)

这使用datetime.date()对象而不是a 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
Run Code Online (Sandbox Code Playgroud)

  • 我觉得非常满足于我在蟒蛇中,因为那里有很棒的人,就像你可以帮助...谢谢老兄.非常大的帮助! (2认同)
  • 我认为条件`如果夏天[0] <=当前<=夏天[1]:`可能更自然一点. (2认同)