仅执行x次

时间:2018-10-24 06:40:32

标签: python

我想编写一个Python函数,该函数在被调用时应该仅在一段时间内执行某些任务。

例如,调用此函数时,应轮询服务器10秒钟,然后在10秒钟后退出服务器。

我考虑过这样做,但是似乎不合适。显然,此功能将花费10秒钟以上的时间。

for i in range (0, 10):    # 10 seconds
    poll_to_server()
    time.sleep(1)

您能建议一种更好的方法吗?

1 个答案:

答案 0 :(得分:1)

如果要重复调用poll_to_server()函数10秒钟,则可以执行以下操作

import time

t_end = time.time() + 10

while time.time() < t_end:
    poll_to_server()

函数time.time以秒为单位返回自1970年1月1日以来的当前时间。该值以浮点数表示,因此您甚至可以亚秒精度使用它。开始时,值t_end被计算为“现在” + 10秒。

循环将一直运行,直到当前时间超过此预设结束时间为止。