Formatage de la date d’hier en python

Je dois trouver la date “d’hier” dans ce format MMDDYY en Python.

Donc, par exemple, la date d’aujourd’hui serait représentée comme ceci: 111009

Je peux facilement le faire pour aujourd’hui, mais j’ai du mal à le faire automatiquement pour “hier”.

 >>> from datetime import date, timedelta >>> yesterday = date.today() - timedelta(1) >>> print yesterday.strftime('%m%d%y') '110909' 
 from datetime import datetime, timedelta yesterday = datetime.now() - timedelta(days=1) yesterday.strftime('%m%d%y') 

Cela devrait faire ce que vous voulez:

 import datetime yesterday = datetime.datetime.now() - datetime.timedelta(days = 1) print yesterday.strftime("%m%d%y") 
 import datetime now = datetime.datetime.now() now -= datetime.timedelta(days=1) print now.strftime("%m%d%y") 

Cela devrait faire l’affaire. Volé dans la liste de diffusion python .

 from datetime import datetime, timedelta today = datetime.today() yesterday = today - timedelta(1) 

Pour développer la réponse donnée par Chris

si vous voulez stocker la date dans une variable dans un format spécifique, c’est le moyen le plus court et le plus efficace à ma connaissance

 >>> from datetime import date, timedelta >>> yesterday = (date.today() - timedelta(days=1)).strftime('%m%d%y') >>> yesterday '020817' 

Si vous le voulez comme un entier (ce qui peut être utile)

 >>> yesterday = int((date.today() - timedelta(days=1)).strftime('%m%d%y')) >>> yesterday 20817 

toutes les réponses sont correctes, mais je tiens à mentionner que le delta temporel accepte les arguments négatifs .

 >>> from datetime import date, timedelta >>> yesterday = date.today() + timedelta(days=-1) >>> print(yesterday.strftime('%m%d%y')) #for python2 remove parentheses 

Vous pouvez trouver tous les codes de format de chaîne ici: http://au2.php.net/strftime

 In [1]: import datetime In [2]: today=datetime.date.today() In [3]: yesterday=today-datetime.timedelta(1) In [4]: yesterday.strftime('%m%d%y') Out[4]: '110909'