有没有有效的方法在指定的边界内创建随机列表?

时间:2017-06-23 17:49:43

标签: python random

到目前为止,我使用以下代码生成具有指定边界的随机列表:

def initGen(low,upp):
    ini=[]
    for i in range(len(low)):
        ini.append(random.uniform(low[i],upp[i]))

return ini

有人可以建议一种更紧凑或替代的方式来实现它吗?输入和输出是浮点数。

2 个答案:

答案 0 :(得分:4)

列表理解会使代码更短,如果这是你所追求的。

def initGen(low, upp):
    return [random.uniform(l, u) for l, u in zip(low, upp)]

答案 1 :(得分:1)

这将完成这项工作:

import numpy as np
low=[5,10]
high=[20,30]
np.random.uniform(low,high)

打印

array([ 10.81578449,  26.20810003])