gpt4 book ai didi

python - 生成没有上限的随机整数

转载 作者:行者123 更新时间:2023-11-28 20:20:37 27 4
gpt4 key购买 nike

我想以可预测的方式生成随机种子

我想做这个

seed = 12345
prng_0 = random.Random(seed)
prng_1 = random.Random(prng_0.rand_int(0))

那里,0 是下限,但事实证明我还需要给它一个上限。我不想设置固定的上限。

如果你对我的理由感到好奇,我这样做是因为我在测试时需要重现性。也就是说,这是一个接收种子并构建其 prng 的函数,prng_0,然后多次调用另一个需要每次接收不同种子的函数。

def funct_a(seed=None):
prng_1 = random.Random(seed)
prng_2 = numpy.random.RandomState(prng_1.randint(0, 4294967296))
print(prng_1.random())
print(prng_2.random())

def funct_b(seed=None):
prng_0 = random.Random(seed)
for i in range(0, 5):
seed = prng_0.randint(0) # not working, needs upper bound
funct_a(seed)

funct_b(12345) # test call

编辑:有趣的是,numpy(我也在使用)有一个确定的上种子值,doc 证明了这一点并通过这个错误

ValueError: Seed must be between 0 and 4294967295

最佳答案

当我不需要上限时,我通常会使用 sys.maxint 作为上限的近似值

关于python - 生成没有上限的随机整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30721703/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com