Last Updated on 2021-05-12 by Clay
在 Python 當中,如果談到要處理『日期』相關的資料,那麼,大家最先想到的非 datetime 這個模組莫屬。 Datetime 這個模組很好地封裝了 Python 關於日期相關的處理,我在爬蟲方面使用的次數特別多。
基本上我認為我可以介紹的部份分成三個部份:『顯示日期時間』、『對日期進行加減的動作』、『改變預設輸出的格式』。
如果想看 Python 官方的文件是如何闡述 datetime 這個模組,可以直接參考官方的網站:https://docs.python.org/zh-cn/3/library/datetime.html
Datetime 使用方法
我們首先來看看該怎麼使用 datetime 來顯示當前日期:
import datetime
datetime 這個模組是 Python 自帶的,並不需要額外下載。
# Display print('All:', datetime.datetime.now()) print('Year:', datetime.datetime.now().year) print('Month:', datetime.datetime.now().month) print('Day:', datetime.datetime.now().day) print('Weekday:', datetime.datetime.now().weekday()) print('Time:', datetime.datetime.now().time())
Output:
All: 2019-11-07 19:04:57.535884
Year: 2019
Month: 11
Day: 7
Weekday: 3
Time: 19:04:57.535884
我們從上面的程式碼可以看出,我們可以使用 datetime 將目前的時間印出,裡面包含了『年』、『月』、『日』、『時間』這四項。當然,我們也可以分別印出,也可以印出現在是禮拜幾。
除此之外,日期也可以進行加減,使用 datetime.timedelta() 即可。
print('Today:', datetime.datetime.now()) print('Yesterday:', datetime.datetime.now() - datetime.timedelta(days=1))
Output:
Today: 2019-11-07 19:04:57.535884
Yesterday: 2019-11-06 19:04:57.535884
前面是今天的日期,後面是我們減去一天的日期。除了設定天數之外,我們也可以進行時間的增減。(這在爬蟲當中都非常好用)
另外,如果我們處理的時間格式不是我們想要的,我們當然可以使用 regular expression 進行修改。但 Python 中的 datetime 模組已經幫你封裝好客製化輸出的函式了。
# Format print('Date:', (datetime.datetime.now() - datetime.timedelta(days=1)).strftime('%Y/%m/%d'))
Output:
Date: 2019/11/06
可以看到,現在日期的輸出格式跟我們設定的一樣,方便我們進行後面的處理。
那麼以上,就是關於 Python 當中 datetime 模組的一些心得筆記。