Par exemple, j'essaie de convertir le 2008-09-26T01: 51: 42.000Z en 09/26/2008. Quelle est la manière la plus simple d'y parvenir?
Le moyen le plus simple consiste à utiliser dateutil . Parser.parse () pour analyser la chaîne de date dans un objet datetime prenant en compte le fuseau horaire, puis utiliser strftime () pour obtenir le format souhaité.
import dateutil.parser
d = dateutil.parser.parse('2008-09-26T01:51:42.000Z')
print(d.strftime('%m/%d/%Y')) #==> '09/26/2008'
Je sais que c'est vraiment une vieille question, mais vous pouvez le faire avec python datetime.strptime ()
>>> from datetime import datetime
>>> date_format = "%Y-%m-%dT%H:%M:%S.%fZ"
>>> datetime.strptime('2008-09-26T01:51:42.000Z', date_format)
datetime.datetime(2008, 9, 26, 1, 51, 42)
>>> import time
>>> timestamp = "2008-09-26T01:51:42.000Z"
>>> ts = time.strptime(timestamp[:19], "%Y-%m-%dT%H:%M:%S")
>>> time.strftime("%m/%d/%Y", ts)
'09/26/2008'
Consultez la documentation du module Python time
pour plus d'informations.
2008-09-26T01:51:42.000Z
est une date ISO8601 et le format peut être très divers. Si vous voulez analyser ces dates, consultez le python wiki sur travailler avec le temps . Il contient des liens utiles vers les modules.