首頁 > 後端開發 > Python教學 > 如何在 Python 中以人類可讀的格式而不是物件表示形式列印日期?

如何在 Python 中以人類可讀的格式而不是物件表示形式列印日期?

Barbara Streisand
發布: 2024-12-13 15:53:15
原創
689 人瀏覽過

How to Print Dates in Python in a Human-Readable Format Instead of Their Object Representation?

如何以常規格式列印日期?


在 Python 中列印日期時,您可能會遇到日期顯示為字串表示形式的問題物件的日期格式而不是常規的日期格式。將日期附加到列表時可能會發生這種情況,因為 print 函數預設使用物件的 repr() 表示形式來表示其數據,而不是更容易理解的 str() 表示形式。


原因:日期作為物件


在 Python 中,日期是具有各種方法和屬性的物件。它們有兩種主要的字串表示形式:



  • 常規表示形式: 使用str() 取得並以人類可讀的格式顯示日期(例如。, "2008-11-22")。

  • 替代表示:使用 repr() 取得並顯示日期作為其物件性質的表示(例如,「datetime.date(2008, 11, 22)」)。


當直接列印日期時,Python 使用str() 表示形式進行顯示,但是當列印包含日期物件的清單時,它使用repr() 表示形式,可能會導致混亂。

解決方案:使用str() 進行顯示


為了確保一致且可讀取的輸出,您應該明確轉換在列印之前使用str()函數將日期物件轉換為字串。這允許您控制日期的顯示方式。


例如,而不是:


import datetime<br>mylist = [datetime.date.today()]<br>print(mylist)<br>
登入後複製

您需要使用:


匯入日期時間<br>mylist = [datetime.date.today()]<br>print(str(mylist[0]))<br>
登入後複製

在第二個範例中,str() 函數用於在列印之前將日期物件轉換為字串,從而得到所需的日期格式。


進階日期格式化


除了使用 str() 之外,Python 還提供 strftime() 方法來根據特定模式建立自訂日期格式。


對於例如,要以「We are the 22, Nov 2008」格式顯示日期,您可以use:


print(datetime.date.today( ).strftime('我們是%d, %b %Y'))<br>
登入後複製

其中:



  • %d:天數(01-31) )

  • %b:月份縮寫(一月至十二月)

  • %Y:全年(0001-9999)


您也可以利用格式化字串文字(自Python 3.6 起)來簡化流程:


print(f"我們是{datetime.datetime.now():%Y-%m-%d}")<br>
登入後複製

這在格式化日期方面提供了更好的控制和靈活性,使您能夠適應不同的顯示要求。

以上是如何在 Python 中以人類可讀的格式而不是物件表示形式列印日期?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板