Python time模塊:處理時間和日期的利器

一、time模塊概述

Python提供了time模塊來處理日期和時間。它包含了各種與時間相關的函數。在Python中,時間以tuple(元組)的形式被表示。元組中包含了年、月、日、小時、分鐘、秒、一周中第幾天、一年中第幾天、是否為夏令時等信息。

下面是通過time模塊獲取當前時間的代碼:

import time
current_time = time.localtime()
print(current_time)

運行上述代碼後,輸出結果為:

time.struct_time(tm_year=2021, tm_mon=3, tm_mday=25, tm_hour=10, tm_min=45, tm_sec=36, tm_wday=3, tm_yday=84, tm_isdst=0)

在上述代碼中,time.localtime()函數返回當前時間元組,包括了年、月、日、小時、分鐘、秒、一周中第幾天、一年中第幾天、是否為夏令時等信息。

二、time模塊常用函數

1.time()

time()函數返回當前時間的時間戳(1970年1月1日零時到現在的秒數)。

import time
timestamp = time.time()
print("當前時間戳為:", timestamp)

運行上述代碼後,輸出結果為:

當前時間戳為: 1616666607.9862998

2.localtime()

localtime()函數將一個時間戳轉換為當前時區的struct_time。若不指定參數,則以當前時間為準。可以通過訪問元組成員來獲取年、月、日、小時、分鐘、秒、一周中第幾天、一年中第幾天、是否為夏令時等信息。

import time
current_time = time.localtime()
print("當前時間:", current_time)
print("年份:", current_time.tm_year)
print("月份:", current_time.tm_mon)
print("日期:", current_time.tm_mday)
print("小時:", current_time.tm_hour)
print("分鐘:", current_time.tm_min)
print("秒鐘:", current_time.tm_sec)

運行上述代碼後,輸出結果為:

當前時間: time.struct_time(tm_year=2021, tm_mon=3, tm_mday=25, tm_hour=11, tm_min=16, tm_sec=4, tm_wday=3, tm_yday=84, tm_isdst=0)
年份: 2021
月份: 3
日期: 25
小時: 11
分鐘: 16
秒鐘: 4

3.strftime()

strftime()函數將一個struct_time(時間元組)格式化為字元串。

import time
current_time = time.localtime()
time_str = time.strftime("%Y-%m-%d %H:%M:%S", current_time)
print("格式化後的時間:", time_str)

運行上述代碼後,輸出結果為:

格式化後的時間: 2021-03-25 11:23:03

其中,%Y代表年份(四位數),%m代表月份(兩位數,01-12),%d代表日期(兩位數,01-31),%H代表小時(24小時制,兩位數,00-23),%M代表分鐘(兩位數,00-59),%S代表秒鐘(兩位數,00-59)。

4.sleep()

sleep()函數可以讓程序暫停一段時間。

import time
print("程序開始執行...")
time.sleep(5)
print("5秒鐘後...")

運行上述代碼後,輸出結果為:

程序開始執行...
5秒鐘後...

三、datetime模塊

Python中還有一個datetime模塊,它提供了更高級別的時間處理功能。datetime模塊中的datetime類既可以表示日期,也可以表示時間。

1.datetime類常用屬性和方法

下面是datetime類常用屬性和方法的介紹:

  • datetime.today():返回當前本地時間的datetime對象。
  • datetime.now():返回當前本地時間的datetime對象,同時可以指定時區。
  • datetime.utcnow():返回當前UTC時間的datetime對象。
  • datetime.fromtimestamp(timestamp):將時間戳轉換為datetime對象。
  • datetime.strftime(format):將datetime對象格式化為字元串。

下面是通過datetime模塊獲取當前時間的代碼:

from datetime import datetime
current_time = datetime.now()
print("當前時間:", current_time)

運行上述代碼後,輸出結果為:

當前時間: 2021-03-25 11:58:34.467982

下面是將datetime對象格式化為字元串的代碼:

from datetime import datetime
current_time = datetime.now()
time_str = current_time.strftime("%Y-%m-%d %H:%M:%S")
print("格式化後的時間:", time_str)

運行上述代碼後,輸出結果為:

格式化後的時間: 2021-03-25 11:58:34

2.timedelta類

timedelta類表示時間間隔。可以用來計算兩個日期之間的天數、小時數等。timedelta對象有days、seconds、microseconds三個只讀屬性,可以分別獲取天數、秒數和微秒數。

下面是計算兩個日期之間的天數的代碼:

from datetime import datetime, timedelta
date1 = datetime(2021, 3, 1)
date2 = datetime(2021, 3, 25)
diff = date2 - date1
print("兩個日期之間的天數:", diff.days)

運行上述代碼後,輸出結果為:

兩個日期之間的天數: 24

下面是通過timedelta類來計算時間之後的日期的代碼:

from datetime import datetime, timedelta
current_time = datetime.now()
one_day = timedelta(days=1)
next_day = current_time + one_day
print("明天的日期是:", next_day.strftime("%Y-%m-%d"))

運行上述代碼後,輸出結果為:

明天的日期是: 2021-03-26

四、總結

本文主要介紹了Python中的time模塊和datetime模塊,它們提供了對日期和時間的處理功能。time模塊能夠獲取當前時間、計算時間間隔、將時間格式化為字元串等;而datetime模塊則提供了更高級別的時間處理功能,支持更多的格式化和操作。使用這些模塊可以更加方便地處理日期和時間,幫助我們完成更多的任務。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/295519.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-27 12:56
下一篇 2024-12-27 12:56

相關推薦

發表回復

登錄後才能評論