Python程式:將時間格式化為AM-PM格式


在Python中,我們有一些內建的時間函式,如strftime()和datetime.now(),可以用來查詢AM/PM格式的時間。AM/PM格式的時間在使用者介面、報表和文件、資料視覺化和事件排程等各種應用程式中都有使用。午夜11:59:00到中午12點之間的時間,我們稱為AM。同樣,中午12點到午夜11:59:00之間的時間,我們稱為PM。AM/PM縮寫用於指示確切的時間。

語法

以下語法在示例中使用:

strftime('%I:%M:%S %p')

strftime()是Python中的一個內建函式,可用於表示時間格式。

引數中表示的格式如下:

  • %I − 小時

  • %M − 分鐘

  • %S − 秒

  • %p − AM/PM

datetime.now()

這是Python中的一個內建函式,可用於查詢當前時間。

localtime()

這是Python中內建的方法,返回當前時間。

示例1

在下面的示例中,我們將從名為**datetime**的模組中匯入datetime的所有內容來啟動程式,這將查詢本地時間。然後將24小時格式的時間儲存在變數**t_str**中,該變數將轉換為12小時格式,並檢查它是AM還是PM。現在我們使用內建函式strftime()。此函式接受兩個引數- **t_str**(給定的時間)和**‘%H:%M:%S’**(以小時、分鐘和秒設定時間格式)。此時間格式表示24小時格式。接下來,我們再次使用strftime()函式將時間格式設定為12小時。在引數中,%p用於檢查AM或PM的時間。最後,我們藉助變數**t_str**和**t_am_pm**列印結果。

from datetime import datetime
t_str = '22:45:32'
t_obj = datetime.strptime( t_str, '%H:%M:%S')
#Time format representation
t_am_pm = t_obj.strftime('%I:%M:%S %p')
print("The given time", t_str)
print("The format in (AM/PM):", t_am_pm)

輸出

The given time 22:45:32
The format in (AM/PM): 10:45:32 PM

示例2

在下面的示例中,我們將從名為**datetime**的模組中匯入datetime的所有內容來啟動程式,這將查詢本地時間。然後我們建立變數dt_obj來儲存值,方法是使用預定義函式**datetime.now()**獲取當前時間。然後使用預定義函式**strftime()**設定12小時的時間格式。此函式充當具有變數**dt_obj**的物件,並將其儲存在變數**ts_am_pm**中。最後,我們藉助變數**dt_obj**和**ts_am_pm**列印結果。

from datetime import datetime
dt_obj = datetime.now()
ts_am_pm = dt_obj.strftime('%I:%M:%S %p')
print("The current time:",dt_obj)
print("The format in (AM/PM):",ts_am_pm)

輸出

The current time: 2023-04-18 17:50:01.963742
The format in (AM/PM): 05:50:01 PM

示例3

在下面的示例中,我們將使用名為format_time()的函式來編寫程式,該函式將datetime物件作為引數,並返回一個字串,該字串表示AM/PM格式的時間。然後,該函式使用datetime物件的strftime()方法根據指定的格式字串'%I:%M %p'格式化時間。此格式指定12小時(%I)時間表,帶分鐘(%M)和AM/PM指示符(%p)。

from datetime import datetime
def p_time(time):
   return time.strftime('%I:%M %p')
time = datetime.now()
time_format = p_time(time)
print("Time in AM/PM:",time_format)

輸出

Time in AM/PM: 06:04 PM

示例4

在下面的示例中,我們將首先匯入名為time的模組,該模組定義時間以設定當前時間,並允許使用者使用內建方法格式化時間。然後初始化名為present_time的變數,該變數使用內建方法localtime()儲存值。然後,我們使用strftime方法使用格式字串“%I:%M %p”以AM/PM格式格式化時間。%I格式程式碼表示12小時格式的小時,%M表示分鐘,%p表示AM或PM,並存儲在變數t_format中。最後,我們藉助變數t_format列印結果。

import time
present_time = time.localtime()
t_format = time.strftime("%I:%M %p", present_time)
print(t_format)

輸出

06:18 PM

結論

我們看到了內建函式strftime()有助於表示AM或PM的時間格式。在示例1中,我們討論了將24小時格式轉換為12小時格式以檢查時間模式是否為AM/PM。在示例2中,我們看到了如何使用datetime.now()函式初始化當前時間。然後使用%p檢查AM/PM的時間。

更新於:2023年6月1日

11K+ 次瀏覽

啟動您的職業生涯

完成課程後獲得認證

開始學習
廣告