293 votes

Formatage de la date "d'hier" en python

J'ai besoin de trouver la date "d'hier" dans le format suivant MMDDYY en Python.

Ainsi, par exemple, la date d'aujourd'hui serait représentée comme suit : 111009

Je peux facilement le faire pour aujourd'hui mais j'ai du mal à le faire automatiquement pour "hier".

507voto

Jarret Hardie Points 36266

Utilisez datetime.timedelta()

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

2 votes

Si vous travaillez avec des pandas, vous pouvez tout aussi bien utiliser : print((pd.to_datetime('Today') - pd.Timedelta('1 days')).strftime('%m%d%y'))

0 votes

Si vous cherchez des options, vous pouvez aussi bien utiliser le pendule ( pendule.eustache.io ) : pendulum.now().subtract(days=-1).strftime('%m%d%y')

178voto

Nadia Alramli Points 40381
from datetime import datetime, timedelta

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

22voto

Stef Points 2532

Cela devrait faire ce que vous voulez :

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

1 votes

Pourquoi vous préoccupez-vous davantage de la date pour les personnes situées dans le décalage UTC 0 que de la date dans le fuseau horaire local du système ?

1 votes

J'ai copié cela de mon code, dans l'utilisation de base de données vous vous souciez souvent de UTC. J'ai enlevé le truc sur l'UTC.

8voto

Ned Batchelder Points 128913
import datetime
now = datetime.datetime.now()
now -= datetime.timedelta(days=1)
print now.strftime("%m%d%y")

4voto

William Brendel Points 15453

Cela devrait faire l'affaire. Volé sur le site de liste de diffusion python .

from datetime import datetime, timedelta

today = datetime.today()
yesterday = today - timedelta(1)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X