【发布时间】:2011-05-31 07:25:16
【问题描述】:
我需要创建一个表示当前时间减去 15 分钟的 DateTime 对象。
【问题讨论】:
我需要创建一个表示当前时间减去 15 分钟的 DateTime 对象。
【问题讨论】:
导入日期时间,然后导入神奇的 timedelta 内容:
In [63]: datetime.datetime.now()
Out[63]: datetime.datetime(2010, 12, 27, 14, 39, 19, 700401)
In [64]: datetime.datetime.now() - datetime.timedelta(minutes=15)
Out[64]: datetime.datetime(2010, 12, 27, 14, 24, 21, 684435)
【讨论】:
now() 以避免在减去原始偏移量和可感知偏移量的日期时间时出错:datetime.datetime.now(datetime.timezone.utc)
datetime.datetime.now() - datetime.timedelta(minutes=15)
【讨论】:
如果您想查看更多示例,我提供了两种方法来执行几分钟以及几年和几小时:
import datetime
print(datetime.datetime.now())
print(datetime.datetime.now() - datetime.timedelta(minutes = 15))
print(datetime.datetime.now() + datetime.timedelta(minutes = -15))
print(datetime.timedelta(hours = 5))
print(datetime.datetime.now() + datetime.timedelta(days = 3))
print(datetime.datetime.now() + datetime.timedelta(days = -9))
print(datetime.datetime.now() - datetime.timedelta(days = 9))
我得到以下结果:
2016-06-03 16:04:03.706615
2016-06-03 15:49:03.706622
2016-06-03 15:49:03.706642
5:00:00
2016-06-06 16:04:03.706665
2016-05-25 16:04:03.706676
2016-05-25 16:04:03.706687
2016-06-03
16:04:03.706716
【讨论】:
import datetime
datetime.datetime.now() - datetime.timedelta(0, 900)
Actually 900 is in seconds. Which is equal to 15 minutes. `15*60 = 900`
【讨论】:
timedelta 但随后使用 datetime 属性。要么导入模块,要么添加类型。
在 timedelta 对象之外使用 DateTime
http://docs.python.org/library/datetime.html
datetime.datetime.now()-datetime.timedelta(minutes=15)
【讨论】:
只有 Python 3.7 中的以下代码对我有用
from datetime import datetime,timedelta
print(datetime.now()-timedelta(seconds=900))
【讨论】:
datetime.datetime.now() - datetime.timedelta(0, 15 * 60)
timedelta 是“时间变化”。第一个参数需要几天,第二个参数需要几秒钟。 15 * 60 秒是 15 分钟。
【讨论】:
如果您使用time.time() 并希望时间戳作为输出
简单使用
CONSTANT_SECONDS = 900 # time in seconds (900 seconds = 15 min)
current_time = int(time.time())
time_before_15_min = current_time - CONSTANT_SECONDS
您可以根据需要更改 900 秒。
【讨论】: