Ich habe test_date = "2017-07-20-10-30" und dann verwenden Sie Tag = datetime.strptime (test_date [11:], "% H-% M"), die mir gibt 1900-01-01 10:30:00.Konvertieren von Datum zu Uhrzeit in Python
Wie bekomme ich nur: 10:30:00 als Typ 'datetime.time'?
Ich habe test_date = "2017-07-20-10-30" und dann verwenden Sie Tag = datetime.strptime (test_date [11:], "% H-% M"), die mir gibt 1900-01-01 10:30:00.Konvertieren von Datum zu Uhrzeit in Python
Wie bekomme ich nur: 10:30:00 als Typ 'datetime.time'?
können Sie die strftime
Methode des wie dieses datetime
Objekt verwenden:
day.strftime('%H:%M')
Weitere Informationen hier: https://docs.python.org/2/library/datetime.html#strftime-strptime-behavior
Ok, ich falsch verstanden. Verwenden Sie day.time()
, um ein Objekt time
zu erhalten.
Aber das gibt String zurück. Ich möchte immer noch
oh, benutze 'day.time()' –
Sie können Ihre Zeichenfolge mit datetime.strptime
zu einem datetime
Objekt analysieren und rufen .time()
dann auf, dass die Zeit zu bekommen:
from datetime import datetime
strg = "2017-07-20-10-30"
dt = datetime.strptime(strg, '%Y-%m-%d-%H-%M')
tme = dt.time()
print(tme) # 10:30:00
die strftime()
and strptime()
Behavior gut dokumentiert ist.
natürlich können Sie die Kette auch diese Anrufe:
tme = datetime.strptime(strg, '%Y-%m-%d-%H-%M').time()
Mögliche Duplikat [Zeichenfolge in Datetime-Konvertierung] (https://stackoverflow.com/questions/466345/converting-string-into-datetime) – fredtantini