如何在python中执行某个时间段的功能?
Posted
技术标签:
【中文标题】如何在python中执行某个时间段的功能?【英文标题】:How to perform a function for a certain time period in python? 【发布时间】:2012-08-31 07:09:02 【问题描述】:我有一个函数:
perform(val)
我想这样调用它两次:
perform(True)
perform(False)
这里我希望第一个函数调用perform(True)
执行 5 小时。 5小时后,perform(True)
中的最后一条语句一执行,就必须返回,perform(False)
必须执行。
类似的东西:
while passed_time < 5:00:
perform(True)
perform(False)
或者perform(val)
的定义应该改变?
def perform(val):
while passed_time < 5:00
do_something1()
do_something2()
do_something3()
do_something4()
return
我该怎么做?
最好的问候
【问题讨论】:
【参考方案1】:from datetime import datetime, timedelta
start = datetime.now()
while datetime.now() - start < timedelta(seconds=5*60*60):
perform(True)
perform(False)
【讨论】:
我唯一要改变的是使用 datetime.utcnow,这样如果你越过夏令时边界就不会遇到任何问题。以上是关于如何在python中执行某个时间段的功能?的主要内容,如果未能解决你的问题,请参考以下文章