【问题标题】:Calculating the date a fixed number of days from given date [duplicate]计算从给定日期起固定天数的日期[重复]
【发布时间】:2018-05-11 11:37:39
【问题描述】:

我需要设计一个代码,它会自动生成距离当前日期 X 天的日期。

为此,我目前有一个返回纪元时间戳的函数,然后我添加固定的天数(以秒为单位)。但是,我目前被困在那里,不知道如何将纪元时间戳转换为公历日期格式(DD/MM/YYYY HH:MM)。显示时间是可选的,可以四舍五入到最近的一天。

不使用纪元时间戳并直接以可读格式获取当前日期、打印它并在生成第二个日期之前添加 X 天的方法也可以,但我不知道是怎么做到的会工作的。

任何帮助/输入将不胜感激。提前致谢。

【问题讨论】:

  • 写示例输入输出
  • 查看timedelta 功能...您只需将天数添加到任何日期时间对象。查看strftime的格式

标签: python python-3.x date time


【解决方案1】:
import datetime
x = 5
'''
Date_Time = datetime.datetime.now()#It wil give Date & time both

Time = datetime.datetime.now().time()#It will give Time Only
'''

Date = datetime.datetime.now().date()#It will give date only


print(Date + datetime.timedelta(days=x))#It will add days to current date

输出:

2017-12-03

【讨论】:

    【解决方案2】:

    您可以使用timedelta

    import datetime as dt
    
    x = 5  # Days offset.
    now = dt.datetime.now()
    >>> now + dt.timedelta(days=x)
    datetime.datetime(2017, 12, 2, 21, 10, 19, 290884)
    

    或者只使用天数:

    today = dt.date.today()
    >>> today + dt.timedelta(days=x)
    datetime.date(2017, 12, 2)
    

    使用strftime 很容易转换回字符串:

    >>> (today + dt.timedelta(days=x)).strftime('%Y-%m-%d')
    '2017-12-02'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-28
      • 1970-01-01
      • 1970-01-01
      • 2016-11-12
      • 2012-04-06
      • 1970-01-01
      相关资源
      最近更新 更多