464 Stimmen

Konvertierung eines datetime-Objekts in einen String mit Datum nur in Python

Ich sehe eine Menge über die Konvertierung einer Datumszeichenfolge in eine datetime Objekt in Python, aber ich möchte den anderen Weg gehen.
Ich habe

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

und ich möchte es in eine Zeichenkette umwandeln wie '2/23/2012' .

3voto

Kimsal San Punkte 51

Sie können datetime in string konvertieren.

published_at = "{}".format(self.published_at)

3voto

Darrell White Punkte 109

Es ist möglich, ein datetime-Objekt in eine Zeichenkette zu konvertieren, indem man direkt mit den Komponenten des datetime-Objekts arbeitet.

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)  

Ausgabe --> 5/23/2017

2voto

Nizam Mohamed Punkte 7548

String-Verkettung, str.join kann zum Aufbau der Zeichenkette verwendet werden.

d = datetime.now()
'/'.join(str(x) for x in (d.month, d.day, d.year))
'3/7/2016'

0voto

Weilory Punkte 1697

Ein Ansatz zur wie weit von jetzt

  • unterstützt verschiedene Sprachen durch Übergabe des Parameters li , eine Liste mit dem entsprechenden Zeitstempel.

    from datetime import datetime from dateutil import parser

    t1 = parser.parse("Tue May 26 15:14:45 2021") t2 = parser.parse("Tue May 26 15:9:45 2021")

    5min

    t3 = parser.parse("Tue May 26 11:14:45 2021")

    4h

    t4 = parser.parse("Tue May 26 11:9:45 2021")

    1day

    t6 = parser.parse("Tue May 25 11:14:45 2021")

    1day4h

    t7 = parser.parse("Tue May 25 11:9:45 2021")

    1day4h5min

    t8 = parser.parse("Tue May 19 11:9:45 2021")

    1w

    t9 = parser.parse("Tue Apr 26 11:14:45 2021")

    1m

    t10 = parser.parse("Tue Oct 08 06:00:20 2019")

    1y7m, 19m

    t11 = parser.parse("Tue Jan 08 00:00:00 2019")

    2y4m, 28m

    create: date of object creation

    now: time now

    li: a list of string indicate time (in any language)

    lst: suffix (in any language)

    long: display length

    def howLongAgo(create, now, li, lst, long=2): dif = create - now print(dif.days) sec = dif.days 24 60 60 + dif.seconds minute = sec // 60 sec %= 60 hour = minute // 60 minute %= 60 day = hour // 24 hour %= 24 week = day // 7 day %= 7 month = (week 7) // 30 week %= 30 year = month // 12 month %= 12 s = [] for ii, tt in enumerate([sec, minute, hour, day, week, month, year]): ss = li[ii] if tt != 0: if tt == 1: s.append(str(tt) + ss) else: s.append(str(tt) + ss + 's')

    return ' '.join(list(reversed(s))[:long]) + ' ' + lst

    t = howLongAgo(t1, t11, [ 'second', 'minute', 'hour', 'day', 'week', 'month', 'year', ], 'ago') print(t)

    2years 4months ago

0voto

KATHEESKUMAR Punkte 137

Ich habe diese Methode verwendet, um Daten in ein JSON-Objekt einzufügen

my_json_string = json.dumps({'date_of_birth': '''{}'''.format(date_of_birth)})

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X