我正在努力为我的博士论文建立一个心理学实验。我对python很新。我要找的是我需要从数字列表中选择一个数字,然后再选择一个数字,它应该在一个案例中高于前一个,在另一个案例低于前一个。
数字池的主要列表是:
digit = range(0,30)
if cong = 'yes':
## select a number for a variable d1 from digit and
## select another number for a variable d2 from digit which is higher than
## d1
else:
## select a number for a variable d1 from digit and
## select another number for variable d2 which is lower than d1
我试过解决这个问题,但我想现在不是那个专家。 如果有人能帮助我解决这个问题,将不胜感激。
PS:这是我的第一个问题,所以我现在非常了解论坛参与的标准做法。
由于 Vatsal
答案 0 :(得分:2)
LO, HI = 0, 30
d1 = random.randint(LO + 1, HI - 1) # Select a number between 0 and 30, exclusive
if cong == 'yes':
d2 = random.randint(d1 + 1, HI) # Select a bigger number
else:
d2 = random.randint(LO, d1 - 1) # Select a smaller number
答案 1 :(得分:2)
randint()
和randrange()
应该完成这项工作:
import random
num_range = a, b #Specify the initial range here. (0, 30) for you.
num_0 = random.randrange(a+1, b) #Boundaries aren't included.
if cong == "yes":
num_1 = random.randint(num_0+1, b) #Select a larger number.
else:
num_1 = random.randint(a, num_0-1) #Select a smaller number.