在python中,日期類型date和日期時間類型dateTime是不能比較的。python
(1)若是要比較,能夠將dateTime轉換爲date,date不能直接轉換爲dateTimespa
import datetime dateTime_p = datetime.datetime.now() date_p = dateTime_p.date() print(dateTime_p) #2019-01-30 15:17:46.573139 print(date_p) #2019-01-30
(2)日期類型date轉換爲字符串strcode
#!/usr/bin/env python3
import datetime date_p = datetime.datetime.now().date() str_p = str(date_p) print(date_p,type(date_p)) #2019-01-30 <class 'datetime.date'> print(str_p,type(str_p)) #2019-01-30 <class 'str'>
(3)字符串類型str轉換爲dateTime類型blog
import datetime str_p = '2019-01-30 15:29:08' dateTime_p = datetime.datetime.strptime(str_p,'%Y-%m-%d %H:%M:%S') print(dateTime_p) # 2019-01-30 15:29:08
(4)dateTime類型轉爲str類型字符串
這個地方我也不太理解,爲何指定格式無效class
import datetime dateTime_p = datetime.datetime.now() str_p = datetime.datetime.strftime(dateTime_p,'%Y-%m-%d') print(dateTime_p) # 2019-01-30 15:36:19.415157
(5)字符串類型str轉換爲date類型import
#!/usr/bin/env python3 import datetime str_p = '2019-01-30' date_p = datetime.datetime.strptime(str_p,'%Y-%m-%d').date() print(date_p,type(date_p)) # 2019-01-30 <class 'datetime.date'>
另外dateTime類型和date類型能夠直接作加1減1這種操做date
#!/usr/bin/env python3 import datetime # today = datetime.datetime.today() today = datetime.datetime.today().date() yestoday = today + datetime.timedelta(days=-1) tomorrow = today + datetime.timedelta(days=1) print(today) # 2019-01-30 print(yestoday)# 2019-01-29 print(tomorrow)# 2019-01-31