我正在尝试确定 2017 年 8 月 23 日之前一年的日期。
我见过的所有示例中,给定日期之前的一年都显示了 datetime.datetime.now()
的使用。我需要确定 2017-08-23 之前的一年。
last_date = 2017-08-23
one_year_prior = last_date - dt.timedelta(days=3*365)
unsupported operand type(s) for -: 'str' and 'datetime.timedelta'
我希望在 2017-08-23 之前拿到一年。我需要格式为 yyyy-mm-dd 的日期作为作业的下一部分。
最佳答案
为了应用timedelta()
,您需要将字符串转换为日期时间。一种方法是使用 strptime()
:
>>> from datetime import datetime, timedelta
>>> s = "2017-08-23"
>>> dt = datetime.strptime(s, "%Y-%m-%d")
>>> one_year_prior = dt - timedelta(days=365)
>>> one_year_prior
datetime.datetime(2016, 8, 23, 0, 0)
关于python - 如何使用 python datetime 确定给定日期 2017-08-23 之前的一年?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58785200/