我在使用这种格式转换python时遇到了麻烦:
u'08:00:00'
到datetime
对象,如:
datetime.datetime(2017,02,22,8,0,0)
这是一种简单的方法吗?
我可以通过解析字符串但寻找更优雅的解决方案
来实现答案 0 :(得分:1)
首先,您需要解析时间字符串。您可以手动执行此操作,也可以使用datetime.strptime()
:
from datetime import datetime
s = u'08:00:00'
t = datetime.strptime(s, '%H:%M:%S').time()
strptime()
并不关心你给它一个unicode字符串。那会给你一个datetime.time
对象:
>>> t
datetime.time(8, 0)
然后使用datetime.combine()
将时间与今天的日期结合起来:
from datetime import date
dt = datetime.combine(date.today(), t)
这将为您提供所需的datetime.datetime
对象:
>>> dt
datetime.datetime(2017, 2, 24, 8, 0)