Вот, пожалуйста:
>>> print datetime.date.today()-datetime.timedelta(1)
>>> 2010-06-19
Вы можете использовать модуль datetime .
import datetime
print (datetime.date(year, month, day) - datetime.timedelta(1)).isoformat()
Вкратце:
Вы найдете полезными функции localtime
и mktime
из модуля time
.
(Кроме того, поскольку модуль time
имеет дело с секундами, вы должны вычесть 86400 вместо 1.)
Допустим, вы начинаете со строки '2010_05_1 '
. Тогда аналогичная строка для предыдущего дня:
>>> import datetime
>>> s = '2010_05_1'
>>> theday = datetime.date(*map(int, s.split('_')))
>>> prevday = theday - datetime.timedelta(days=1)
>>> prevday.strftime('%Y_%m_%d')
'2010_04_30'
>>>
Конечно, вы объедините все это в одну удобную функцию!