Исходный вопрос подразумевает генерацию кратных случайных целых чисел.
Как я могу генерировать целые числа от 0 до 9 (включительно) в Python?
Однако многие ответы показывают только, как получить одно случайное число, например, random.randint
и random.choice
.
Несколько случайных целых чисел
Для ясности, вы все еще можете генерировать несколько случайных чисел, используя эти методы, просто повторяя N
times:
import random
N = 5
[random.randint(0, 9) for _ in range(N)]
# [9, 7, 0, 7, 3]
[random.choice(range(10)) for _ in range(N)]
# [8, 3, 6, 8, 7]
Образец случайных целых чисел
В некоторых публикациях показано, как сгенерировать несколько случайных целых чисел. 1 Вот несколько вариантов, которые касаются подразумеваемого вопроса:
random.sample
возвращает k
уникальные выборки из совокупности (без замены): 2
random.sample(range(10), k=N)
# [4, 5, 1, 2, 3]
В Python 3.6 random.choices
возвращает k
выборок из совокупности (с заменой):
random.choices(range(10), k=N)
# [3, 2, 0, 8, 2]
См. Также этот пост с использованием numpy.random.choice
.
1 А именно @Джон Лоуренс Аспден, @ST Mohammed, @SiddTheKid, @ user14372, @zangw и др.
2 @ prashanth упоминает этот модуль, показывая одно целое число.