python3 字符串 | 时间 | 日期之间的相互转换
运行环境 : pyhton 3.6.0
在 python 中,日期类型 date 和日期时间类型 dateTime 是不能比较的。
(1)如果要比较,可以将 datetime 转换为 date,date 不能直接转换为 datetime
import datetime
now_time = datetime.datetime.now()
now_date = now_time.date()
print(now_time)
print(now_date)
# 输出
"""
2019-09-19 22:20:30.163409
2019-09-19
"""
(2)日期类型 date 转换为字符串 str
import datetime
now_date = datetime.datetime.now().date()
str_now_date = str(now_date)
print(now_date, type(now_date))
print(str_now_date, type(str_now_date))
# 输出
"""
2019-09-19 <class 'datetime.date'>
2019-09-19 <class 'str'>
"""
(3)字符串类型 str 转换为 dateTime 类型
import datetime
str_now_date = '2019-09-19 22:20:30'
now_date = datetime.datetime.strptime(str_now_date, '%Y-%m-%d %H:%M:%S')
print(now_date, type(now_date))
# 输出
"""
2019-09-19 22:20:30 <class 'datetime.datetime'>
"""
(4)datetime 类型转为 str 类型
import datetime
now_time = datetime.datetime.now() # 2019-09-19 22:28:22.824015
now_date = datetime.datetime.strftime(now_time, '%Y-%m-%d')
print(now_date, type(now_date))
# 输出
"""
2019-09-19 <class 'str'>
"""
(5)字符串类型 str 转换为 date 类型
import datetime
str_now_time = '2019-09-19'
now_date = datetime.datetime.strptime(str_now_time, '%Y-%m-%d').date()
print(now_date, type(now_date)) # 2019-09-19 <class 'datetime.date'>
# 输出
"""
2019-09-19 <class 'datetime.date'>
"""
(6)另外 datetime 类型和 date 类型可以直接做 加 1 减 1 这种操作
import datetime
today = datetime.datetime.today().date()
yestoday = today + datetime.timedelta(days=-1)
tomorrow = today + datetime.timedelta(days=1)
print(today) # 2019-09-19
print(yestoday) # 2019-09-18
print(tomorrow) # 2019-09-20
# 输出
"""
2019-09-19 <class 'datetime.date'>
"""
还没有评论,来说两句吧...