Réponses:
Utilisation datetime.timedelta()
>>> from datetime import date, timedelta
>>> yesterday = date.today() - timedelta(days=1)
>>> 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")
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
Puis-je simplement rendre cela un peu plus international et formater la date selon la norme internationale et non pas dans l'étrange mois-jour-année, ce qui est courant aux États-Unis?
from datetime import datetime, timedelta
yesterday = datetime.now() - timedelta(days=1)
yesterday.strftime('%Y-%m-%d')
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 pour autant que je sache
>>> 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
print((pd.to_datetime('Today') - pd.Timedelta('1 days')).strftime('%m%d%y'))