[Python] Problème de date.

Fermé
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 - 20 févr. 2006 à 16:08
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 - 20 févr. 2006 à 17:10
Bonjour tout le monde.
J'ai un petit soucis de date avec Python.

Je veux convertir une date du format texte au format DateTime.

Donc je fais (by the book):

import time
import datetime

madate = "2006-02-03 09:36:00"

print datetime.datetime.fromtimestamp(time.strptime(madate,"%Y-%m-%d %H:%M:%S"))


Mais il me sort: TypeError: a float is required


Pourquoi est-ce que la fonction fromtimestamp me demande un float ???
La doc ne précise rien concernant des floats.


Si vous avez une idée... :-.
A voir également:

5 réponses

sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 660
20 févr. 2006 à 17:10
Ayé j'ai trouvé:
madate = "2006-02-03 09:36:00"
print datetime.datetime.fromtimestamp(time.mktime(time.strptime(madate,"%Y-%m-%d %H:%M:%S")))


ça marche.



time.strptime() renvoie un tuple, alors que time.time() renvoie un flottant (pas très cohérent, au passage...)
Et fromtimestamp attendait bien un flottant.
2
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
20 févr. 2006 à 16:41
Salut Seb,

T'es sous 2.3?

Ca peut pas être les - qui foutent le bordel ?
0
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
20 févr. 2006 à 16:48
madate = "2006-02-03 09:36:00"

print time.strptime(madate,"%Y-%m-%d %H:%M:%S")



(2006, 2, 3, 9, 36, 0, 4, 34, -1)


Il manque donc des paramètres à ta date apparement pour qu'il le prenne normalement...
0
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
20 févr. 2006 à 16:52
>>> datetime.datetime.today()
datetime.datetime(2006, 2, 20, 16, 49, 56, 401000)

Je sais pas ce que représente 401000 mais je parie que c'est ça qui lui manque...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 660
20 févr. 2006 à 17:01
401000 ??

ah... oui ça doit être ça.

Je suis sous 2.4.1.

Je vais essayer.
0