在python中添加和减少24小时的时间?

Ryf*_*lex 0 python datetime strftime strptime python-2.7

我需要从字符串中减去5个小时 "03:40"

我尝试过以下方法:

import datetime

timevar = "03:40"
newtime = datetime.datetime.date.strftime("%H:%M", timevar)
newtime = newtime - datetime.timedelta(hours=5)
print newtime
Run Code Online (Sandbox Code Playgroud)

我已经阅读了datetime文档,但我仍然无法看到我做错了什么.

任何帮助非常感谢.
- Hyflex

mgi*_*son 7

你有一些问题......首先,你正在寻找strptime而不是strftime.第二, strptime是一种方法datetime.datetime,而不是datetime.datetime.date.第三,你已经把参数的顺序混淆了.这应该是你想要的:

newtime = datetime.datetime.strptime(timevar, "%H:%M")
newtime -= datetime.timedelta(hours=5)
Run Code Online (Sandbox Code Playgroud)

*注意,这给你一个日期部分,大约在1900年1月1日左右.看起来你只想要时间部分,所以这可能没关系 - 但我认为值得一提.