如何从两个范围(蟒蛇)

问题描述:

我需要选择蟒蛇在两个范围的随机浮点数获得一个随机浮点数:如何从两个范围(蟒蛇)

0. < n < 0.2 or 0.8 < n < 1. 

现在我只有一个范围:

random.uniform(0, 0.2) 

实线(我映射暖色HSV值):

couleur = hsv2rgb(random.uniform(0, 0.2), 1, 1)) 

如果有人可以帮助...!

+0

通过采取一个单一的范围,如'[0; 0.4]'并将其映射到所需的? – spectras

+0

它需要从上或其他 – SelmaB

你可以做一个加权选择的间隔之间:

from numpy import random 

def uniform_two(a1, a2, b1, b2): 
    # Calc weight for each range 
    delta_a = a2 - a1 
    delta_b = b2 - b1 
    if random.rand() < delta_a/(delta_a + delta_b): 
     return random.uniform(a1, a2) 
    else: 
     return random.uniform(b1, b2) 

print uniform_two(0, 0.2, 0.8, 1) 

0 < n < 0.4创建一个随机数和该区间的上半部分映射到所需的范围。

nbr = random.uniform(0, 0.4) 
if nbr >= 0.2: 
    nbr += 0.6