用户在我的界面中指定小时和分钟。我想将当前日期附加到Python中的datetime
对象。
首先我尝试了这个:
a = datetime.strptime("8:30pm", "%I:%M%p")
print a
但这会产生:
1900-01-01 20:30:00
然后我尝试了:
b = date.today()
a = datetime.strptime(str(b.year) + "-" + str(b.month) + "-"
+ str(b.day) + " 8:30pm", "%Y-%m-%d %I:%M%p")
这很有效,但很难看;肯定有更好的方法吗?
答案 0 :(得分:4)
是的,请使用datetime.datetime.combine:
import datetime
a = datetime.datetime.strptime("8:30pm", "%I:%M%p")
today = datetime.datetime.today()
result = datetime.datetime.combine(today.date(), a.time())
# result == datetime.datetime(2011, 12, 25, 20, 30)