2010-12-01 25 views
1

S'il vous plaît quelqu'un peut donner des conseils à ce sujet, j'ai essayé différentes méthodes, mais ne semblent pas être en mesure de le faire fonctionner.python compte à rebours à l'événement (en jours et heures)

J'ai juste besoin d'un compte à rebours de

datetime.now() 

à

datetime(2011,05,05) 

en jours heures

+1

Alors dites-nous ce que vous avez essayé et comment cela n'a pas fonctionné. Si vous ne nous dites pas, (1) nous sommes condamnés à faire les mêmes erreurs, ou (2) nous ne pouvons pas vous dire ce que vous avez fait de mal. – delnan

Répondre

9

Vous pouvez utiliser

delta = datetime.datetime(2011, 5, 5) - datetime.datetime.now() 

pour obtenir un objet datetime.timedelta décrivant la temps restant. Le nombre de jours restants est delta.days, les heures restantes delta.seconds/3600. ou delta.seconds//3600.

0

Vous pouvez essayer -

import datetime 

dt = datetime.datetime 
now = dt.now() 

# This gives timedelta in days 
dt(year=2011,month=05,day=05) - dt(year=now.year, month=now.month, day=now.day) 

# This gives timedelta in days & seconds 
dt(year=2011,month=05,day=05) - dt(year=now.year, month=now.month, day=now.day, minute=now.minute) 
0
>>> days_till_doomsday = \ 
... (datetime.datetime(2011,05,05) - datetime.datetime.now()).days 
>>> days_till_doomsday 
154 
>>> hours_till_midnight_today = 24 - datetime.datetime.now().hour 
>>> hours_till_midnight_today 
5 
>>> hours_till_doomsday = \ 
... (days_till_doomsday * 24) + hours_till_midnight_today 
>>> hours_till_doomsday 
3701 

cette aide?