所以这段代码是我想要的:
import datetime
d = datetime.date.today()
three_months_ago = d - timedelta(months=3)
Run Code Online (Sandbox Code Playgroud)
但是,正如我们所知,timedelta 中不存在 'months' 参数。
我承认我可以这样编程来实现目标:
if d.month > 3:
three_months_ago = datetime.date(d.year, d.month-3, d.day)
else:
three_months_ago = datetime.date(d.year-1, d.month-3+12, d.day)
Run Code Online (Sandbox Code Playgroud)
但这似乎真的很愚蠢......
你们能告诉我如何聪明地意识到这一点吗?
小智 14
这可以帮助:
>>>from dateutil.relativedelta import relativedelta
>>>import datetime
>>>datetime.date.today()
datetime.date(2016, 3, 10)
>>>datetime.date.today() - relativedelta(months=3)
datetime.date(2015, 12, 10)
Run Code Online (Sandbox Code Playgroud)
您也可以使用 relativedelta() 来增加或减少周和年。
| 归档时间: |
|
| 查看次数: |
6666 次 |
| 最近记录: |