如何在python中随机运行一个函数?

时间:2017-10-26 10:06:57

标签: python random

我想让我的程序随机运行一些函数。例如,如果有一个函数,我希望它每分钟运行3次,而不是在确切的时间或一段时间内运行。它可以在10:10:20,10:10:21,10:10:59或10:11:01,10:11:03,10:11:49运行。如何在Python中完成? random module是否支持此内容?

2 个答案:

答案 0 :(得分:3)

在上面的示例中,一分钟运行3次,我们可以使用随机在一分钟内选择3个时间点(以秒为单位),并对其进行排序(如MSeifert所说)

import random
points = sorted(random.sample(range(60), 3))

并在所选时间运行函数。

答案 1 :(得分:1)

为此创建自己的algorytm。

  • 以秒为单位获得您的时间跨度(1分钟= 60)
  • 在此间隔(3)
  • 中添加您想要运行它的次数
  • 创建一个tast shedduler,它正在检查这个二秒运行脚本的机会。
  • 创建一个计算总计数的计数变量。
  • 结束前X秒运行所有剩余的呼叫,其中X是wanted_runs - counter。

或者您可以使用带有运行和秒的所需数据剪切: algorytm

import random
points = sorted(random.sample(range(SECONDS), WANTED_RUNS))
# sorted because result should be in the right order. now create a timer for seconds in fire call each match.