python - 使用 random 函数随机化计划任务

标签 python python-2.7 random scheduled-tasks scheduling

我正在尝试使用代码:

import random
import datetime
from sched import scheduler
from time import time, sleep

s = scheduler(time, sleep)
random.seed()

def run_periodically(start, end, interval, func):
    event_time = start
    while event_time < end:
        s.enterabs(event_time, 0, func, ())
        event_time += interval + random.random(-5, 45)
    s.run()

getData()#######

run_periodically(time()+5, time()+1000000, 10, getData)

我正在尝试让预定时间和/或预定间隔具有某种程度的随机化,目前代码返回

typeError: random() takes no arguments (2 given)

如果有人能告诉我如何解决这个问题或提供替代方法,我们将不胜感激。

最佳答案

在终端中输入 help(random.random)(如果您使用的是 iPython,则输入 random.random??),您将得到:

random() -> x 在区间 [0, 1].

所以它不接受任何输入,这就是错误背后的原因。要生成特定范围内的随机数,您可以使用 random.randint(链接到 random.randrange)。

所以对于你的情况来说它会是这样的:random.randint(-5,45)

关于python - 使用 random 函数随机化计划任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16930228/

相关文章:

python - MySQL 和 python 。如何查询 WHERE 'column' IN 元组

python - 按特定单词和字母顺序排序

google-app-engine - 如何使用 Oauth2 和 GAE 绕过本地登录屏幕

php - 什么是 PHP 的 mt_rand() 最小值以及如何在 32 位 Linux 机器上计算 32 位整数

php - str_shuffle 和随机性

python - 使用 Dask 在大型集合上映射可变执行时间的函数

python - 使用 Numpy 实现 PCA

python - 返回用 open 打开的文件句柄?

python - 如何在 TXT 中添加文本、写入每一行的开头并以额外的行结尾

c - 如何使用标准库在 GNU C 中生成 A 到 B 之间的伪随机数(A,B 是整数)