本篇介紹 Python 字串轉時間日期,在 Python 將 string 轉 datetime 的方法如下,
Python string 轉 datetime
在 Python 日期 string to datetime 的方法如下,
假設我們要轉換的日期字串為 2021-01-01
,要使用 datetime.datetime.strptime()
然後會回傳一個 datetime.datetime
物件,1
2
3
4
5
6from datetime import datetime
s = '2021-01-01'
day = datetime.strptime(s, '%Y-%m-%d')
print(type(day))
print(day)
datetime.strptime()
第一個參數傳入日期時間字串,第二個參數傳入這個日期時間字串的格式是什麼,例如:%Y-%m-%d
就是 西元年-月-日
這樣的格式,結果如下,1
2<class 'datetime.datetime'>
2021-01-01 00:00:00
如果幾點幾分也要傳入呢?Python 日期時間轉 datetime 的方法如下,
這邊示範將 2021-01-10 11:30:20
與 2021-01-10 15:40:50
兩個日期時間轉換成 datetime,1
2
3
4
5
6
7
8
9
10from datetime import datetime
s1 = '2021-01-10 11:30:20'
s2 = '2021-01-10 15:40:50'
day1 = datetime.strptime(s1, '%Y-%m-%d %H:%M:%S')
day2 = datetime.strptime(s2, '%Y-%m-%d %H:%M:%S')
print(type(day1))
print(type(day2))
print(day1)
print(day2)
結果如下,1
2
3
4<class 'datetime.datetime'>
<class 'datetime.datetime'>
2021-01-10 11:30:20
2021-01-10 15:40:50
Python string 轉 datetime 並且作加法
通常日期時間轉換為 datetime 後會作加法,
Python 將日期 string 轉 datetime 並且作加 3 天,範例如下,1
2
3
4
5
6
7import datetime
s = '2021-01-10'
day = datetime.datetime.strptime(s, '%Y-%m-%d')
delta = datetime.timedelta(days=3)
day2 = day + delta
print(day2)
結果如下,1
2021-01-13 00:00:00
Python string 轉 datetime 並且作減法
Python string 轉 datetime 並且作減 2 天,1
2
3
4
5
6
7import datetime
s = '2021-01-10'
day = datetime.datetime.strptime(s, '%Y-%m-%d')
delta = datetime.timedelta(days=2)
day2 = day - delta
print(day2)
結果如下,1
2021-01-08 00:00:00
再舉另一個範例,兩個日期字串轉成 datetime 再相減,1
2
3
4
5
6
7
8import datetime
s1 = '2021-01-10 11:30:20'
s2 = '2021-01-08 11:30:30'
day1 = datetime.datetime.strptime(s1, '%Y-%m-%d %H:%M:%S')
day2 = datetime.datetime.strptime(s2, '%Y-%m-%d %H:%M:%S')
delta = day2 - day1
print(delta)
結果如下,1
-2 days, 0:00:10
其它相關文章推薦
Python 新手入門教學懶人包
Python 時間日期轉字串
Python 寫檔,寫入 txt 文字檔
[Python] 讀取 csv 檔案
[Python] 寫入 csv 檔案
[Python] 讀寫檔案
[Python] 產生 random 隨機不重複的數字 list
[Python] PyAutoGUI 使用教學
Python OpenCV resize 圖片縮放