我有一個字符串列表可能是時間對象。注意:不是日期時間對象或時間戳對象。這些時間沒有提及時代或日期。例如:在Python中將各種人類可讀的時間格式解析爲時間對象(datetime.time)?
time_strings = ['6:00PM', '7:00pm', '8:00am', '17:00:00', '4PM']
是否有一個很好的分析工具,可以轉換到這些,而不是datetime.datetime對象(默認情況下輸入當前日期)datetime.time對象?
標準「datetime.datetime.strptime()都需要的時間是已知的格式的,併產生一個datetime.datetime.object,例如:
from datetime import datetime
datetime.strptime('6:00', '%H:%M')
收率:datetime.datetime(1900 ,1,1,6,0)
我曾嘗試以下:
from dateutil.parser import parse
parse(time_strings[0])
收率:datetime.datetime(2017年,8,24,18,0)
import pandas as pd
pd.to_datetime(time_strings[0])
收率:時間戳( '2017年8月24日18:00:00')
from pytimeparse import parse as tparse
tparse(time_strings[0])
失敗(返回空值)
import parsedatetime
cal = parsedatetime.Calendar()
cal.parse(time_strings[0])
收率:(time.struct_time的(tm_year = 2017,tm_mon = 8,tm_mday = 24,tm_hour = 18,tm_min = 0,tm_sec = 0,tm_wday = 3,tm_yday = 236,tm_isdst的= 1), 2)
對於我的目的,重要的是沒有日期可以推斷,如果不是數據。
是否有更好的python實用程序(python 3)可以將各種可讀時間表達式轉換爲datetime.time對象?