我正在尝试生成一个函数,该函数从均匀分布生成随机数Number_Rand()
,另一个函数在给定某个种子的情况下生成随机数Number_Rand_Seed()
- 这样对于固定种子,它总是相同的。但是,我调用Number_Rand_Seed()
里面的函数Number_Rand()
,并且出于某种原因种子也用于在里面生成随机数Number_Rand()
,所以它的输出总是一样的。种子不应该是内部的局部变量Number_Rand_Seed()
吗?每次我调用 np.random 函数时不应该“更新”种子吗(例如,参见这个答案)?那我应该怎么做才能“更新”里面的种子Number_Rand()
而忽略 的种子Number_Rand_Seed()
?
这是一个例子:
def Number_Rand_Seed():
np.random.seed(300121)
a = np.random.uniform(0, 10)
return a
def Number_Rand():
a = Number_Rand_Seed()
b = np.random.uniform(0, 10)
return a, b
for i in range(3):
print(Number_Rand())
输出是
(9.354120260352017, 2.552916103146633)
(9.354120260352017, 2.552916103146633)
(9.354120260352017, 2.552916103146633)
但我想要类似的东西
(9.354120260352017, 8.823425849537022)
(9.354120260352017, 5.950595370176398)
(9.354120260352017, 9.992406389398592)