170 votes

Analyser la chaîne de date et modifier le format

J'ai une chaîne de date au format 'Mon Feb 15 2010'. Je souhaite changer le format en '15/02/2010'. Comment puis-je faire ça ?

219voto

SilentGhost Points 79627

Le moduledatetime pourrait vous aider avec cela :

datetime.datetime.strptime(date_string, format1).strftime(format2)

Pour l'exemple spécifique que vous pourriez faire

>>> import datetime
>>> datetime.datetime.strptime('Mon Feb 15 2010', '%a %b %d %Y').strftime('%d/%m/%Y')
'15/02/2010'
>>>

81voto

llazzaro Points 1392

Vous pouvez installer la bibliothèque dateutil. Sa fonction parse peut comprendre dans quel format une chaîne est sans avoir à spécifier le format comme vous le faites avec datetime.strptime.

from dateutil.parser import parse
dt = parse('Mon Feb 15 2010')
print(dt)
# datetime.datetime(2010, 2, 15, 0, 0)
print(dt.strftime('%d/%m/%Y'))
# 15/02/2010

31voto

Anjaneyulu Batta Points 2897

convertir la chaîne en objet datetime

from datetime import datetime
s = "2016-03-26T09:25:55.000Z"
f = "%Y-%m-%dT%H:%M:%S.%fZ"
out = datetime.strptime(s, f)
print(out)
output:
2016-03-26 09:25:55

26voto

ghostdog74 Points 86060
>>> from_date="Mon Feb 15 2010"
>>> import time                
>>> conv=time.strptime(from_date,"%a %b %d %Y")
>>> time.strftime("%d/%m/%Y",conv)
'15/02/2010'

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