一、Python獲取當前時間的基礎函數
Python的標準庫中datetime模塊中包含了一個用於處理日期和時間的類datetime,其中的datetime類可以獲取當前的日期和時間,代碼如下:
from datetime import datetime # 獲取當前時間 now = datetime.now() print(now)
上述代碼中,我們通過from語句導入了datetime模塊中的datetime類,然後使用now()函數獲取了當前時間,最後將結果打印到屏幕上。執行上述代碼所得到的結果為:
2019-11-04 16:08:19.740393
這裡我們需要注意的是,當前時間的精確度達到了微秒級別。
二、時間格式化
有時候我們需要以特定的格式輸出當前時間,如’2019-11-04 16:08:19’,這就需要我們將datetime對象進行格式化。datetime對象的strftime()函數可以將時間對象轉換成指定格式的字符串,代碼如下:
from datetime import datetime # 獲取當前時間 now = datetime.now() # 格式化輸出 print(now.strftime("%Y-%m-%d %H:%M:%S"))
上述代碼中,strftime()函數的參數中,’Y’表示年份,’m’表示月份,’d’表示日期,’H’表示小時數(24小時制),’M’表示分鐘,’S’表示秒數。執行上述代碼所得到的結果為:
2019-11-04 16:08:19
我們還可以使用其他格式化方式創建自定義的時間格式。
三、時區轉換
在處理時間時,經常需要進行時區轉換。通過pytz庫,可以很方便地實現時區轉換。
比如,我們需要將中國標準時間轉換成美國東部標準時間,代碼如下:
import pytz from datetime import datetime # 獲取當前時間 now = datetime.now() # 轉換時區 china_tz = pytz.timezone('Asia/Shanghai') eastern_tz = pytz.timezone('US/Eastern') china_time = china_tz.localize(now) eastern_time = china_time.astimezone(eastern_tz) # 格式化輸出 print(eastern_time.strftime("%Y-%m-%d %H:%M:%S %Z%z"))
上述代碼中,我們使用pytz庫將當前時間的時區轉換為中國標準時間,然後再將其轉換為美國東部標準時間。在輸出時,我們使用了%Z和%z兩個參數分別表示時區的名稱和偏移量。執行上述代碼所得到的結果為:
2019-11-04 03:58:35 EST-0500
四、時間計算
Python中可以很方便地進行時間計算,使用timedelta函數可以進行加減操作。
比如,我們可以在當前時間的基礎上增加1個小時和20分鐘的時間間隔,代碼如下:
from datetime import datetime, timedelta # 獲取當前時間 now = datetime.now() # 計算時間差 delta = timedelta(hours=1, minutes=20) # 計算計算後的時間 new_time = now + delta # 格式化輸出 print(new_time.strftime("%Y-%m-%d %H:%M:%S"))
上述代碼中,我們使用timedelta函數定義一個時間間隔,然後使用+運算符將其與當前時間進行相加,從而得到計算後的時間。執行上述代碼所得到的結果為:
2019-11-04 17:29:27
五、總結
本篇文章詳細介紹了Python中獲取當前時間的方法,並且對其中的一些常見應用場景進行了介紹。除此之外,還有很多時間處理的技巧和函數,讀者可以繼續深入學習。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/152936.html