139 votes

Comment convertir une chaîne de date dans un format différent

J'ai besoin de convertir une date chaîne de caractères "2013-1-25" à chaîne de caractères "1/25/13" en python. J'ai regardé le datetime.strptime mais je n'arrive toujours pas à trouver un moyen de le faire.

258voto

eumiro Points 56644

Je suppose que j'ai import datetime avant d'exécuter chacune des lignes de code ci-dessous

datetime.datetime.strptime("2013-1-25", '%Y-%m-%d').strftime('%m/%d/%y')

imprime "01/25/13" .

Si vous ne pouvez pas vivre avec le premier zéro, essayez ceci :

dt = datetime.datetime.strptime("2013-1-25", '%Y-%m-%d')
print '{0}/{1}/{2:02}'.format(dt.month, dt.day, dt.year % 100)

Cette impression "1/25/13" .

EDIT : Il se peut que cela ne fonctionne pas sur toutes les plateformes :

datetime.datetime.strptime("2013-1-25", '%Y-%m-%d').strftime('%m/%d/%y')

30voto

Alexander Points 49390

Si vous pouvez vivre avec 01 pour janvier au lieu de 1, alors essayez...

d = datetime.datetime.strptime("2013-1-25", '%Y-%m-%d')
print datetime.date.strftime(d, "%m/%d/%y")

Vous pouvez vérifier le docs pour d'autres directives de formatage.

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