如何将格式YYYYMMDD的给定日期转换为前一天

时间:2018-04-20 07:19:44

标签: python string python-3.x datetime

日期格式为“YYYYMMDD”,我希望它在“YYYYMMDD-(1)”中,即前一天。

例如,考虑日期20080101,上一个日期将是20071231。

是否有内置函数可以执行此操作?

1 个答案:

答案 0 :(得分:0)

您可以分三步执行此转换:

  1. 将字符串转换为datetime
  2. 减去一天。
  3. datetime对象转换为str
  4. 以下是一个例子:

    from datetime import datetime, timedelta
    
    x = '20080101'
    f = '%Y%m%d'
    
    res = (datetime.strptime(x, f) - timedelta(days=1)).strftime(f)
    # '20071231'