2016-11-23 38 views
0

我有這樣的數據:「2016-10-17 09:34:02」,格式爲:「%Y-%m-%d% H:%M:%S」我用:from datetime import datetime如何從datetime.strptime對象獲取「時間」部分python

我的變量是這樣的:

date_object = datetime.strptime(datetemp, format) 

到目前爲止,一切都很好...

但我需要得到的只是在部分時間從這個對象(date_object)做出一些比較...

當我做這樣的:

print(date_object.time) 

我得到以下錯誤:

built-in method time of datetime.datetime object at 0x00A94AE8 

我怎麼能得到的只是部分時間從對象date_object?這將允許我在小時範圍內進行比較。

回答

1

您需要括號()添加到您的print(date_object.time)電話:

print(date_object.time()) 

輸出示例:

>>> import datetime 
>>> now = datetime.datetime.now() 
>>> now.time() 
datetime.time(22, 14, 6, 996000) 
>>> print(now.time()) 
22:14:06.996000 
0

date_object.time().__str__()這會給你的格式,你想

date_object.time().__str__() is equal to `print(date_object.time())` 

但你可以將它存儲在var中,而不僅僅是將它打印在你的scree中ñ。

1
>>> import datetime as dt 
>>> timenow = dt.datetime.now() 
>>> timenow 
datetime.datetime(2016, 11, 23, 9, 59, 54, 291083) 
>>> timenow.date() 
datetime.date(2016, 11, 23) 
>>> timenow.time() 
datetime.time(9, 59, 54, 291083) 

輸出是日期時間類型。

>>> print(datetime.time()) 
00:00:00 

或者你可以把它轉換成字符串並打印

>>> time_str = str(timenow.time()) 
>>> time_str 
'09:59:54.291083' 
相關問題