Python将日期时间小时设置为特定时间

标签 python datetime

我正在尝试将日期设为昨天晚上 11.30。

这是我的代码:

    import datetime
    yesterday = datetime.date.today () - datetime.timedelta (days=1) 
    PERIOD=yesterday.strftime ('%Y-%m-%d') 
    new_period=PERIOD.replace(hour=23, minute=30)
    print new_period

但是我得到了这个错误:

TypeError: replace() takes no keyword arguments

任何帮助将不胜感激。

最佳答案

首先,将 datetime.date.today() 更改为 datetime.datetime.today() 以便您可以操纵一天中的时间。

然后在把时间变成字符串之前调用replace

所以而不是:

PERIOD=yesterday.strftime ('%Y-%m-%d') 
new_period=PERIOD.replace(hour=23, minute=30)

这样做:

new_period=yesterday.replace(hour=23, minute=30).strftime('%Y-%m-%d')
print new_period

还请记住,您将其转换为的字符串不显示有关小时或分钟的信息。如果您对此感兴趣,请将 %H 小时和 %M 分钟信息添加到格式字符串中。

关于Python将日期时间小时设置为特定时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23642676/

相关文章:

sql - T SQL 将 Unix 刻度转换为日期时间

java - 使用仅字符串格式化程序将纪元时间戳字符串转换为Joda日期时间

python - 获取嵌套字典的所有键

python - 值错误 : dictionary update sequence element #0 has length 3; 2 is required when attempting to coerce generator function into dictionary

python - 我可以连续迭代几个字典而不合并它们吗?

python - 如何在 python 中计算一周的第一天和最后一天

python - 如何创建一个不可实例化的类?

python - python 中的异或位

php - 将小时分钟添加到日期时间

JavaScript 时钟只倒计时小时、分钟和秒……而不是天数