Bien que la question concerne l'obtention de "date seulement", je suis venu pour ^ ceci, alors merci. Aussi, pour obtenir une chaîne un peu plus humaine: datetime.datetime.now().ctime()==>'Wed Sep 4 13:12:39 2019'
Denis
13
Vous pouvez utiliser des méthodes de formatage de chaîne simples:
Si vous cherchez un moyen simple de datetimeconvertir la chaîne et que vous pouvez omettre le format. Vous pouvez convertir un datetimeobjet en str, puis utiliser le découpage de tableau.
Il est possible de convertir un objet datetime en chaîne en travaillant directement avec les composants de l'objet datetime.
from datetime import date
myDate = date.today()#print(myDate) would output 2017-05-23 because that is today#reassign the myDate variable to myDate = myDate.month #then you could print(myDate.month) and you would get 5 as an integer
dateStr = str(myDate.month)+"/"+ str(myDate.day)+"/"+ str(myDate.year)# myDate.month is equal to 5 as an integer, i use str() to change it to a # string I add(+)the "/" so now I have "5/" then myDate.day is 23 as# an integer i change it to a string with str() and it is added to the "5/" # to get "5/23" and then I add another "/" now we have "5/23/" next is the # year which is 2017 as an integer, I use the function str() to change it to # a string and add it to the rest of the string. Now we have "5/23/2017" as # a string. The final line prints the string.print(dateStr)
DateTimeField
ouDateField
dans Django. Mercit = datetime.datetime.now()
pour utiliser la date actuelledate
et lesdatetime
objets (ettime
aussi) prennent en charge un mini-langage pour spécifier la sortie , et il y a deux façons d'y accéder:dt.strftime('format here')
; et'{:format here}'.format(dt)
Ainsi, votre exemple pourrait ressembler à:
ou
Par souci d'exhaustivité: vous pouvez également accéder directement aux attributs de l'objet, mais vous n'obtenez alors que les chiffres:
Le temps pris pour apprendre la mini-langue en vaut la peine.
Pour référence, voici les codes utilisés dans le mini-langage:
%a
Jour de semaine comme nom abrégé des paramètres régionaux.%A
Jour de semaine comme nom complet de la locale.%w
Jour de la semaine sous forme décimale, où 0 correspond au dimanche et 6 au samedi.%d
Jour du mois sous forme de nombre décimal avec un zéro.%b
Mois comme nom abrégé des paramètres régionaux.%B
Mois comme nom complet de la locale.%m
Mois sous forme de nombre décimal avec un zéro. 01, ..., 12%y
Année sans siècle sous forme de nombre décimal à remplissage zéro. 00, ..., 99%Y
Année avec siècle comme nombre décimal. 1970, 1988, 2001, 2013%H
Heure (horloge de 24 heures) sous forme de nombre décimal à zéro. 00, ..., 23%I
Heure (horloge de 12 heures) sous forme de nombre décimal à zéro. 01, ..., 12%p
Équivalent des paramètres régionaux AM ou PM.%M
Minute sous forme de nombre décimal à remplissage zéro. 00, ..., 59%S
Deuxième en tant que nombre décimal à remplissage zéro. 00, ..., 59%f
La microseconde en nombre décimal, complétée par un zéro à gauche. 000000, ..., 999999%z
Décalage UTC sous la forme + HHMM ou -HHMM (vide si naïf), +0000, -0400, +1030%Z
Nom du fuseau horaire (vide si naïf), UTC, EST, CST%j
Jour de l'année sous forme de nombre décimal à remplissage zéro. 001, ..., 366%U
Numéro de semaine de l'année (le dimanche est le premier) sous forme de nombre décimal avec un zéro.%W
Numéro de semaine de l'année (le lundi est le premier) sous forme de nombre décimal.%c
Représentation appropriée de la date et de l'heure des paramètres régionaux.%x
Représentation de date appropriée des paramètres régionaux.%X
Représentation temporelle appropriée des paramètres régionaux.%%
Un caractère '%' littéral.la source
Une autre option:
la source
datetime.datetime.now().ctime()
==>'Wed Sep 4 13:12:39 2019'
Vous pouvez utiliser des méthodes de formatage de chaîne simples:
la source
'{:%Y-%m-%d %H:%M}'.format(datetime(2001, 2, 3, 4, 5))
. Voir plus sur pyformat.infotype-specific formatting
peut également être utilisé:Production:
la source
Si vous cherchez un moyen simple de
datetime
convertir la chaîne et que vous pouvez omettre le format. Vous pouvez convertir undatetime
objet enstr
, puis utiliser le découpage de tableau.Mais notez la chose suivante. Si d'autres solutions augmentent
AttributeError
lorsque la variable estNone
dans ce cas, vous recevrez une'None'
chaîne.la source
Il est possible de convertir un objet datetime en chaîne en travaillant directement avec les composants de l'objet datetime.
Sortie -> 23/05/2017
la source
Vous pouvez convertir datetime en chaîne.
la source
La concaténation de chaînes,,
str.join
peut être utilisée pour créer la chaîne.la source
Si vous voulez aussi du temps, allez-y avec
Imprime
2019-07-11 19:36:31.118766
dans la console pour moila source