2010-06-20 7 views

Respuesta

19

Aquí van:

>>> print datetime.date.today()-datetime.timedelta(1) 
>>> 2010-06-19 
-1

En resumen:

  1. convertir el año/mes/día para un número.
  2. Reste 1 de ese número.
  3. Convertir el número a año/mes/día.

se encuentra el localtime y mktime funciones del módulo de time útil.

(Además, dado que los time segundo módulo trata, debe restar 86400 en lugar de 1.)

3

Diga usted comienza con una cadena '2010_05_1'. A continuación, la cadena similar para el día anterior es:

>>> 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' 
>>> 

¡Por supuesto que va a encapsular todo esto en una función práctica!

1

Puede utilizar el datetime module.

import datetime 
print (datetime.date(year, month, day) - datetime.timedelta(1)).isoformat() 
Cuestiones relacionadas