一、time模塊介紹
Python中的time模塊是一個與時間相關的模塊,提供了多個處理時間的函數以及可供使用的結構體,例如時間戳、結構化時間等。time模塊是Python處理與時間相關信息的標準庫,它定義了表示和操作時間的函數和變量,在Python中,使用它來獲取和修改時間信息。
二、時間戳轉換為字符串
時間戳(timestamp)是指從1970年1月1日(UTC/GMT的午夜)開始所經過的秒數,通常使用整數表示。時間戳是表示時間的一種技術,一般很少直接使用。但是在Python中,我們經常會用到將時間戳轉換成字符串來顯示時間。
import time # 將時間戳轉換為本地時間struct_time,再使用strftime將其轉換為時間字符串 time_str = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time_stamp))
其中,%Y表示四位數的年份,%m表示兩位數的月份,%d表示兩位數的天數,%H表示小時,%M表示分鐘,%S表示秒數。以上語法格式用于格式化struct_time成字符串。在上面示例中,我們使用time.localtime將時間戳轉換成struct_time,然後再通過strftime將其格式化為我們想要的時間字符串。
三、時間戳轉換為日期
在很多情況下,我們只需要將時間戳轉換成日期並顯示出來。與將時間戳轉換成字符串不同,將時間戳轉換為日期是不需要再次轉換為struct_time的。Python提供了另一個方法——gmtime,它可以直接將時間戳轉換成UTC時區時間。
import time # 將UTC時間戳轉換為struct_time,年月日為元組的形式表示 utc_time = time.gmtime(time_stamp) date_tuple = (utc_time[0], utc_time[1], utc_time[2]) # 直接將數字分別轉換為字符串並連接起來 date_str = '-'.join([str(i) for i in date_tuple])
在上面的代碼中,我們使用time.gmtime方法將時間戳轉換成UTC時間下的struct_time,然後從struct_time中獲取年月日的元組。最後,我們將這個元組轉換成字符串,其中元素之間用”-“連接。
四、時間戳轉換為星期
將時間戳轉換為星期幾需要使用calendar模塊,該模塊可以生成各種與日曆相關的事項,包括星期幾。在我們的代碼中,我們將時間戳轉換成整數的星期幾。
import time import calendar # 將時間戳轉換為struct_time,再使用calendar.weekday獲取星期幾 struct_time = time.localtime(time_stamp) week_day_index = calendar.weekday(struct_time.tm_year, struct_time.tm_mon, struct_time.tm_mday) # 將星期幾的數字轉換為中文 week_day_list = ["星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"] week_day_cn = week_day_list[week_day_index]
在上面的代碼中,我們使用了calendar.weekday()方法,該方法可以通過傳遞年、月、日來獲取給定日期的星期幾的數字(0表示星期一,1表示星期二,以此類推)。最後,我們將數字轉換為中文星期幾。
五、時間格式化字符串
時間格式化字符用來將日期格式化成Python中的時間字符串的字符串。時間字符串的格式通常是特定的格式,即以某種方式格式化後顯示日期和時間。在Python中,我們可以使用datetime模塊將日期和時間字符串格式化為Python支持的日期時間格式。例如:%y/%m/%d %H:%M:%S。
import time # 獲取當前時間的時間戳 time_stamp = time.time() # 將時間戳轉換為本地時間struct_time,然後使用strftime方法將其格式化為我們想要的格式 struct_time = time.localtime(time_stamp) time_str = time.strftime("%Y-%m-%d %H:%M:%S", struct_time)
在上面的代碼中,我們首先使用time.time()獲取當前時間的時間戳,然後使用time.localtime()方法將其轉換為本地時間下的struct_time。最後,我們使用strftime()方法將struct_time格式化為我們想要的格式。在時間格式字符串中,%Y表示四位數的年份,%m表示兩位數的月份,%d表示兩位數的天數,%H表示小時,%M表示分鐘,%S表示秒數。
原創文章,作者:OZNL,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/143616.html