web-dev-qa-db-fra.com

Python datetime - définition d'une heure et d'une minute fixes après l'utilisation de strptime pour obtenir le jour, le mois et l'année

J'ai converti avec succès quelque chose de format 26 Sep 2012 en 26-09-2012 en utilisant:

datetime.strptime(request.POST['sample_date'],'%d %b %Y')

Cependant, je ne sais pas comment régler l'heure et la minute d'une chose comme celle-ci sur 11h59. Quelqu'un sait-il comment faire cela?

Notez que cela peut être une date future ou une date aléatoire, pas seulement la date du jour.

135
user1678031

Utilisez datetime.replace :

_from datetime import datetime
date = datetime.strptime('26 Sep 2012', '%d %b %Y')
newdate = date.replace(hour=11, minute=59)
_
290
nneonneo

datetime.replace () fournira les meilleures options. En outre, il permet de remplacer le jour, l’année et le mois.

Supposons que nous ayons un objet datetime et que la date est représentée par: "2017-05-04"

>>> from datetime import datetime
>>> date = datetime.strptime('2017-05-04',"%Y-%m-%d")
>>> print(date)
2017-05-04 00:00:00
>>> date = date.replace(minute=59, hour=23, second=59, year=2018, month=6, day=1)
>>> print(date)
2018-06-01 23:59:59
36
Abhay Chauhan