Réponses:
La classe datetime a une méthode strftime. La documentation Python documente les différents formats qu'elle accepte:
Pour cet exemple spécifique, cela ressemblerait à quelque chose comme:
my_datetime.strftime("%B %d, %Y")
strftime
différence entre Python 2 et 3?
Voici comment vous pouvez accomplir la même chose en utilisant la fonction de mise en forme générale de python ...
>>>from datetime import datetime
>>>"{:%B %d, %Y}".format(datetime.now())
Les caractères de mise en forme utilisés ici sont les mêmes que ceux utilisés par strftime . Ne manquez pas le premier :
dans le spécificateur de format.
L'utilisation de format () au lieu de strftime () dans la plupart des cas peut rendre le code plus lisible, plus facile à écrire et cohérent avec la façon dont la sortie formatée est générée ...
>>>"{} today's date is: {:%B %d, %Y}".format("Andre", datetime.now())
Comparez ce qui précède avec l'alternative strftime () suivante ...
>>>"{} today's date is {}".format("Andre", datetime.now().strftime("%B %d, %Y"))
De plus, ce qui suit ne fonctionnera pas ...
>>>datetime.now().strftime("%s %B %d, %Y" % "Andre")
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
datetime.now().strftime("%s %B %d, %Y" % "Andre")
TypeError: not enough arguments for format string
Etc...
print 'Today is {:%B %d, %Y}'.format(datetime.now())
à print 'Today is {}'.format(datetime.now().strftime('%B %d, %Y')
. Lorsque vous utilisez de toute façon la méthode format (), pourquoi ne pas l'utiliser également pour le formatage de la date?
from datetime import datetime
date_string = f'{datetime.now():%Y-%m-%d %H:%M:%S%z}'
question très ancienne, je sais. mais avec les nouvelles f-strings (à partir de python 3.6) il y a de nouvelles options. donc ici pour l'exhaustivité:
from datetime import datetime
dt = datetime.now()
# str.format
strg = '{:%B %d, %Y}'.format(dt)
print(strg) # July 22, 2017
# datetime.strftime
strg = dt.strftime('%B %d, %Y')
print(strg) # July 22, 2017
# f-strings in python >= 3.6
strg = f'{dt:%B %d, %Y}'
print(strg) # July 22, 2017
strftime()
et strptime()
Behavior explique ce que signifient les spécificateurs de format.
L'objet datetime Python a un attribut de méthode, qui s'imprime dans un format lisible.
>>> a = datetime.now()
>>> a.ctime()
'Mon May 21 18:35:18 2018'
>>>
C'est pour formater la date?
def format_date(day, month, year):
# {} betekent 'plaats hier stringvoorstelling van volgend argument'
return "{}/{}/{}".format(day, month, year)
dt = datetime.datetime(*t[:7])