python - 在 Python 中将当前日期添加到指定的小时和分钟

标签 python datetime

用户在我的界面中指定小时和分钟。我想将当前日期附加到 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")

这行得通,但是很丑;肯定有更好的方法吗?

最佳答案

是的,使用 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)

关于python - 在 Python 中将当前日期添加到指定的小时和分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8630497/

相关文章:

参数中带有空格的 Python 子进程调用在 Windows 上不起作用

python - 如何跳出函数并返回循环?

python - 使用 python 列表理解过滤 json 响应

python - 在数据库插入/更新之前处理字段

python - 为什么那个版本的合并排序更快

java - java.util.Date 和 Joda Time API 之间的差异

vb.net - 获取过去 10 个星期一的列表

python - 计算 Pandas 中的独特广告展示次数

ruby-on-rails - 我怎样才能以 ruby 开始当前的工作日?

python - 在 pandas 中存在 NaN 的情况下从日期时间列中提取四分之一