Python可以生成一个不包含一组数字的随机数吗,而不使用递归?

9 浏览
0 Comments

Python可以生成一个不包含一组数字的随机数吗,而不使用递归?

我查看了Python文档(可能有误解),但我没有看到有一种方法可以在不调用递归函数的情况下实现这一点(请参考下面的内容)。

我想做的是生成一个排除了中间值的随机值。

换句话说,

假设我想要X是一个不在range(a - b, a + b)范围内的随机数。

我能在第一次尝试中做到这一点吗,

还是

1. 我必须不断生成一个数,

2. 检查是否在range()内,

3. 再来一遍?

至于为什么我不想编写递归函数,

1. 感觉不应该这样做,

2. 我要处理的数字集可能会很大,

...我听说堆栈溢出很糟糕,我可能只是过于谨慎了。

我相信有一种好的、Python式的、非递归的方法来实现这个。

0