【问题标题】:python get tommorows date dd.mm.yy problem [duplicate]python get tommorows date dd.mm.yy问题[重复]
【发布时间】:2019-04-09 02:46:15
【问题描述】:

所以基本上我想检查某个字符串是否包含 tommorows 日期,所以我制作了这个日期变量(参见代码)。 现在的问题是每个月的最后一天都会出错。例如 9 月 30 日,按照我的做法,它会说明天将是 9 月 31 日,但实际上并不存在。我需要它说明天是 10 月 1 日。 有什么建议?请务必采用 dd.mm.yy 格式。

  day = str(datetime.datetime.today().day+1)
  month = str(datetime.datetime.today().month)
  year = str(datetime.datetime.today().year)      
  date = day + "." + month + "." + year

【问题讨论】:

  • str(datetime.datetime.today() + datetime.timedelta(days=1))
  • @JoranBeasley 如果你稍微充实一下,那肯定可以作为答案发布。
  • 忠告:只调用datetime.datetime.today()一次,并以此为基础进行所有计算(日、月、年等)。否则可能会出现 11 月 31 日等(如果第一行在 10 月 31 日 23:59:59.987 执行,第二行在 11 月 1 日 00:00:00.014 执行)。

标签: python date


【解决方案1】:

今天只加一天

tomorrow = datetime.datetime.today() + datetime.timedelta(days=1)
print(str(tomorrow),tomorrow.strftime("%d.%m.%y"))

【讨论】:

    【解决方案2】:

    relativedelta也可以用

    import datetime
    from dateutil.relativedelta import relativedelta 
    tomorrow = datetime.datetime.today() + relativedelta(days=1)
    print(str(tomorrow),tomorrow.strftime("%d.%m.%y"))
    

    【讨论】:

    • 添加 1 天的 delta 时,使用 relativedelta(需要添加第三方依赖项)比 timedelta(标准库)有什么优势?
    猜你喜欢
    • 2013-08-17
    • 1970-01-01
    • 2013-02-02
    • 2016-03-19
    • 1970-01-01
    • 2010-11-08
    • 2014-11-04
    • 1970-01-01
    • 2019-04-15
    相关资源
    最近更新 更多