2015-07-10 67 views
-3

我在python中有一個來自數據庫(postgreSQL)的輸出。時間編碼爲時間戳。我們需要能夠將時間轉換成幾分鐘。如何將時間對象轉換爲Python中的分鐘數

2015年7月9日13:45:08.266520 + 00:00

例如,這將是825分鐘。

我與datetime.datetime格式有問題,我只需要能夠放下一切,但小時和分鐘,然後轉換爲分鐘。

time_format = '%H:%M' 

time1 = datetime.strptime('2015-07-09 13:45:08.266520+00:00', time_format) 

因此,我試圖按照一定的時間間隔對一個大的列表進行排序。我需要這些時間只需幾分鐘,以便對他們進行任何數學計算,我不想再惹上時間了。這就是爲什麼我試圖通過花60小時+ 60分鐘將他們變成幾分鐘。由於這是一種時間格式,我無法做到這一點。

+1

*「有問題」* - 什麼問題,以及什麼代碼? – jonrsharpe

+1

這是825分鐘嗎? –

+1

你好,歡迎來到StackOverflow。請花一些時間閱讀幫助頁面,尤其是名爲[「我可以詢問什麼主題?」(http://stackoverflow.com/help/on-topic)和[「我應該問什麼類型的問題避免問?「](http://stackoverflow.com/help/dont-ask)。更重要的是,請閱讀[Stack Overflow問題清單](http://meta.stackexchange.com/q/156810/204922)。您可能還想了解[最小,完整和可驗證示例](http://stackoverflow.com/help/mcve)。 –

回答

0

我明白你想要做什麼。所以你想把你從數據庫中得到的時間戳轉換成幾分鐘。基本上0點會是0,1點會是60,依此類推。

時間戳是標準的,所以一個骯髒的黑客你可以做的只是拉相關信息的索引,你想要的並從那裏去。

time = "2015-07-09 13:45:08.266520+00:00" 
data = time[11:18] 
print data //Will be 13:45:08 

然後你可以從那裏做數據操作。

2

的。減去從DateTime在時間上與參考點DateTime,提取得到的由60

TimeDelta除(你沒有給任何代碼total_seconds,所以我不能給任何代碼基於你的。)

1

dateutil需要很多頭痛的瞭解析ISO 8601郵票:

>>> import dateutil.parser 
>>> dateutil.parser.parse('2015-07-09 13:45:08.266520+00:00') 
datetime.datetime(2015, 7, 9, 13, 45, 8, 266520, tzinfo=tzutc()) 

既然你想要的答案是3,088,825分鐘,代數,必須尋求從一個劃時代標誌偏移:

>>> import datetime as dt 
>>> mark=dateutil.parser.parse('2015-07-09 13:45:08.266520+00:00')-dt.timedelta(minutes=825) 
>>> mark 
datetime.datetime(2015, 7, 9, 0, 0, 8, 266520, tzinfo=tzutc()) 

所以現在使用mark爲基礎來計算分鐘偏移。 (您可能的意思是忽略基準時間標記中的微秒)

相關問題