Python中月初的日期时间问题

时间:2010-01-04 08:26:32

标签: python

我有一个在一定时间后删除文件的功能。问题是它可以在本月晚些时候使用,但是当我尝试从月初开始删除7天后,它将不会减少到上个月。有谁知道如何让这个工作?代码在下面,用于计算日期并删除日期。

today = datetime.date.today() # Today's date Binary
todaystr = datetime.date.today().isoformat() # Todays date as a string
minus_seven = today.replace(day=today.day-7).isoformat() # Removes 7 days

感谢您的帮助。

2 个答案:

答案 0 :(得分:7)

minus_seven = today - datetime.timedelta(days = 7)

答案 1 :(得分:3)

这打破的原因是todaydatetime.date;正如the docs所说,这意味着today.day是:

  

在给定年份的给定月份的1天和天数之间。

你可以在本月晚些时候看到这个原因;但是在这个月的前几天你最终得到负值。

文档会立即记录您正在尝试做的事情的正确方法:

  

date2 = date1 - timedelta计算date2,使得date2 + timedelta == date1。