Convertir un objet datetime en une chaîne de caractères de date uniquement en Python

Je vois beaucoup de choses sur la conversion d'une chaîne de date en un objet datetime en Python, mais je veux aller dans l'autre sens.
J'ai

datetime.datetime(2012, 2, 23, 0, 0)

et je voudrais le convertir en chaîne de caractères comme "23/02/2012".

Solution

Vous pouvez utiliser [strftime][1] pour vous aider à formater votre date.

Par exemple,

import datetime
t = datetime.datetime(2012, 2, 23, 0, 0)
t.strftime('%m/%d/%Y')

donnera :

'02/23/2012'

Pour plus d'informations sur le formatage, voir [ici][2].

[1] : http://docs.python.org/2/library/time.html#time.strftime [2] : http://docs.python.org/library/datetime.html#strftime-strptime-behavior

Commentaires (3)

Vous pourriez utiliser de simples méthodes de formatage des chaînes de caractères :

>>> dt = datetime.datetime(2012, 2, 23, 0, 0)
>>> '{0.month}/{0.day}/{0.year}'.format(dt)
'2/23/2012'
>>> '%s/%s/%s' % (dt.month, dt.day, dt.year)
'2/23/2012'
Commentaires (1)

Le [formatage spécifique au type][1] peut également être utilisé :

t = datetime.datetime(2012, 2, 23, 0, 0)
"{:%m/%d/%Y}".format(t)

Sortie :

'02/23/2012'

[1] : https://docs.python.org/2/library/string.html#format-examples

Commentaires (0)