不含零的随机整数列表 Python

0 投票
2 回答
1431 浏览
提问于 2025-04-18 01:14

我需要一个随机的整数列表,里面不能有0。我现在用的是random.sample(xrange(y),z),但是我不想在这个列表里出现0。谢谢!

2 个回答

2

很简单,只需要指定另一个参数:

random.sample(xrange(1, y), z)
                     ^

注意这个 1。这是 开始 参数,意思是 0 不包括在内。

举个例子:

>>> list(xrange(1, 10))
[1, 2, 3, 4, 5, 6, 7, 8, 9]
2

从1开始你的范围,然后:

random.sample(xrange(1, y), z)

其实就这么简单。

演示:

>>> list(xrange(3))
[0, 1, 2]
>>> list(xrange(1, 3))
[1, 2]

xrange() 不仅可以生成从1开始到某个结束点的一系列整数,它还可以在两个点之间生成一系列数字;另外还有一个选项可以让你设置步长:

>>> list(xrange(1, 6, 2))
[1, 3, 5]

撰写回答