一、datetime和date的區別
在Python中,datetime和date都是表示日期和時間的對象。不同的是,datetime包含日期和時間,而date只包含日期。
因此,將datetime轉為date有時是必要的操作。這個操作在我們日常開發中很常見,比如從資料庫中取出時間戳然後轉成日期格式。
二、使用datetime.date()方法
Python中的datetime模塊提供了date()方法,可以將datetime對象轉為date對象。
import datetime # 創建一個datetime對象 dt = datetime.datetime.now() # 轉換為date對象 d = dt.date() print("dt: ", dt) print("d: ", d)
以上代碼輸出的結果如下:
dt: 2022-08-03 16:14:11.747891 d: 2022-08-03
三、使用strftime()方法
Python中的strftime()方法可以將datetime對象格式化成字元串。
import datetime # 創建一個datetime對象 dt = datetime.datetime.now() # 按照指定格式將datetime對象格式化成字元串 d = dt.strftime('%Y-%m-%d') print("dt: ", dt) print("d: ", d)
以上代碼輸出的結果如下:
dt: 2022-08-03 16:14:11.747891 d: 2022-08-03
需要注意的是,strftime()方法格式化後返回的是字元串,而不是日期類型。
四、使用dateutil庫
Python中的dateutil庫提供了一個parser對象可以將字元串解析成datetime對象或date對象。
首先需要安裝dateutil庫:
pip install python-dateutil
from dateutil.parser import parse # 創建一個datetime對象 dt = parse("2022-08-03 16:14:11") # 轉換為date對象 d = dt.date() print("dt: ", dt) print("d: ", d)
以上代碼輸出的結果如下:
dt: 2022-08-03 16:14:11 d: 2022-08-03
五、總結
Python中將datetime轉為date很簡單,可以使用datetime模塊的date()方法,也可以使用strftime()方法將datetime格式化成字元串再轉換為date類型。
另外,dateutil庫也提供了一個parser對象可以將字元串解析成datetime或date對象,雖然這個庫的功能比較豐富,但是不建議在性能要求較高的場景中使用。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/295264.html