如何將Python DateTime字串轉換為毫秒整數?
在本文中,我們將討論在Python中將Python datetime字串轉換為毫秒的各種方法。
使用time.time()方法
Python中的time模組提供了各種與時間相關的方 法和函式。在這裡,我們使用time.time()方法以秒為單位獲取當前CPU時間。時間是從紀元開始計算的,返回一個以秒錶示的浮點數。此值乘以1000,並使用round()函式四捨五入。
注意:紀元是時間的起點,並且取決於平臺。在Windows和大多數Unix系統上,紀元是1970年1月1日00:00:00(UTC),並且自紀元以來的時間(以秒為單位)中不包含閏秒。
我們使用time.gmtime(0)來獲取給定平臺上的紀元。
語法
time()方法的語法如下。
time.time()
返回一個表示自紀元以來的秒數的浮點值。
示例
在下面的示例程式碼中,我們使用time.time()方法以秒為單位獲取當前時間。然後我們乘以1000,並使用round()函式對值進行近似。
import time obj = time.gmtime(0) epoch = time.asctime(obj) print("The epoch is:",epoch) curr_time = round(time.time()*1000) print("Milliseconds since epoch:",curr_time)
輸出
以上程式碼的輸出如下:
The epoch is: Thu Jan 1 00:00:00 1970 Milliseconds since epoch: 1662373873162
使用datetime模組
在這裡,我們使用datetime模組提供的各種函式來查詢當前時間並將此字串轉換為毫秒整數。
首先,我們使用datetime.utcnow()方法檢索當前日期。然後,我們透過從當前日期減去日期1970-01-01(datetime(1970, 1, 1))來獲得自紀元以來的天數。對於此日期,我們應用.total_seconds()返回自紀元以來的總秒數。最後,我們使用round()函式將值四捨五入到毫秒。
示例1
在下面的示例程式碼中,我們獲取以字串形式表示的當前時間,並將其轉換為毫秒整數。
from datetime import datetime print("Current date in string format:",datetime.utcnow()) date= datetime.utcnow() - datetime(1970, 1, 1) print("Number of days since epoch:",date) seconds =(date.total_seconds()) milliseconds = round(seconds*1000) print("Milliseconds since epoch:",milliseconds)
輸出
以上示例程式碼的輸出如下:
Current date in string format: 2022-09-05 10:31:52.853660 Number of days since epoch: 19240 days, 10:31:52.853671 Milliseconds since epoch: 1662373912854
示例2
timestamp()函式用於將datetime物件轉換為毫秒:
import time from datetime import datetime dt = datetime(2018, 1, 1) milliseconds = int(round(dt.timestamp() * 1000)) print(milliseconds)
輸出
這將給出以下輸出
1514745000000
廣告