如何將Python日期轉換為Unix時間戳?
UNIX時間戳是從紀元開始計算的秒數總和。紀元是時間的起點,並且取決於平臺。在Windows和大多數Unix系統上,紀元是1970年1月1日00:00:00(UTC),並且自紀元以來的秒數中不包含閏秒。
在本文中,我們將瞭解如何將Python日期轉換為UNIX時間戳。
日期時間轉換為UNIX時間戳
在這裡,我們使用time.mktime()方法將Python日期轉換為UNIX時間戳。在這個例子中,我們首先匯入了datetime模組。然後,我們宣告並賦值了一個datetime.time/date (2022, 6, 3, 12, 0, 50)。time.mktime()是本地時間的反函式。time.mktime()方法接受一個time.struct_time物件或一個包含9個元素的元組,並返回一個浮點值,該值表示自紀元以來的秒數。
語法
mktime()方法的語法如下所示。
time.mktime(t)
其中,t是time.struct_time物件或一個包含9個元素的元組,對應於time.struct_time物件。
datetime.date例項的timetuple()方法返回一個time.struct_time型別的物件。使用time.mktime()方法將此物件轉換為UNIX時間戳。
示例
下面是一個將Python日期轉換為UNIX時間戳的示例程式碼。
import datetime import time date_time = datetime.datetime(2022, 6, 3, 12, 0, 50) print("Given Date:",date_time) print("UNIX timestamp:", (time.mktime(date_time.timetuple())))
輸出
上述程式碼的輸出如下所示:
Given Date: 2022-06-03 12:00:50 UNIX timestamp: 1654257650.0
日期時間轉換為UTC時區的UNIX時間戳。
在這裡,我們可以使用datetime模組將日期時間轉換為Python中的UTC時間戳。如果您已經擁有UTC中的datetime物件,則可以使用timestamp()獲取UTC時間戳。此函式返回該datetime物件的紀元時間。如果您有本地時區中的datetime物件,請先替換時區資訊,然後再獲取時間。
示例
以下是用例程式碼,用於將日期時間轉換為UNIX時間戳。
import datetime from datetime import timezone dt = datetime.datetime(2022, 6, 7) timestamp = dt.replace(tzinfo=timezone.utc).timestamp() print("The timestamp for the date 06-07-2022 is:",timestamp)
輸出
The timestamp for the date 06-07-2022 is: 1654560000.0
日期時間字串轉換為UNIX時間戳
在這種情況下,我們將以字串格式表示的日期時間轉換為UNIX時間戳。
示例
import datetime given_date = "8/6/2022, 05:54:8" formated_date = datetime.datetime.strptime(given_date,"%m/%d/%Y, %H:%M:%S") Unix_timestamp = datetime.datetime.timestamp(formated_date) print("The Unix timestamp for the given input date is:") print(Unix_timestamp)
輸出
The Unix timestamp for the given input date is: 1659765248.0
資料結構
網路
關係資料庫管理系統(RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP