16 ответов:
попробуй:
from random import randint print(randint(0, 9))дополнительная информация:https://docs.python.org/3/library/random.html#random.randint
import random print(random.randint(0,9))
random.randint(a, b)возвращает случайное целое число N такое, что a
Docs:https://docs.python.org/3.1/library/random.html#random.randint
попробуйте это:
from random import randrange, uniform # randrange gives you an integral value irand = randrange(0, 10) # uniform gives you a floating-point value frand = uniform(0, 10)
from random import randint x = [randint(0, 9) for p in range(0, 10)]это генерирует 10 псевдослучайных целых чисел в диапазоне от 0 до 9 включительно.
попробуйте это через
random.shuffle>>> import random >>> nums = [x for x in range(10)] >>> random.shuffle(nums) >>> nums [6, 3, 5, 4, 0, 1, 2, 9, 8, 7]
выберите размер массива (в этом примере я выбрал размер 20). А затем, используйте следующее:
import numpy as np np.random.randint(10, size=(1, 20))вы можете ожидать увидеть вывод следующей формы (различные случайные целые числа будут возвращены каждый раз, когда вы запускаете его; следовательно, вы можете ожидать, что целые числа в выходном массиве будут отличаться от приведенного ниже примера).
array([[1, 6, 1, 2, 8, 6, 3, 3, 2, 5, 6, 5, 0, 9, 5, 6, 4, 5, 9, 3]])
в случае непрерывных чисел
randintилиrandrange- вероятно, лучший выбор, но если у вас есть несколько различных значений в последовательности (т. е.list) вы также можете использоватьchoice:>>> import random >>> values = list(range(10)) >>> random.choice(values) 5
choiceтакже работает для одного элемента из не-непрерывный пример:>>> values = [1, 2, 3, 5, 7, 10] >>> random.choice(values) 7Если вам это нужно "криптографически сильный" есть также
secrets.choiceв python 3.6 и новее:>>> import secrets >>> values = list(range(10)) >>> secrets.choice(values) 2
Если вы хотите использовать numpy, то используйте следующее:
import numpy as np print(np.random.randint(0,10))
исходный вопрос подразумевает генерирование несколько случайные целые числа.
как я могу генерировать числа от 0 до 9 (включительно) в Python?
многие ответы, однако, показывают только, как получить один случайных чисел, например,
random.randintиrandom.choice.Несколько Случайных Целых Чисел
для ясности, вы все еще можете сгенерировать несколько случайных чисел, используя эти методы просто повторяя
Nраза: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уникальные выборки из популяции (без замены):2random.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а именно @John Lawrence Aspden, @S T Mohammed, @SiddTheKid, @user14372, @zangw и др.
2@prashanth упоминает этот модуль, показывающий одно целое число.
>>> import random >>> random.randrange(10) 3 >>> random.randrange(10) 1получить список из десяти образцов:
>>> [random.randrange(10) for x in range(10)] [9, 0, 4, 0, 5, 7, 4, 3, 6, 8]
random.sampleэто еще один, который может быть использованimport random n = 1 # specify the no. of numbers num = random.sample(range(10), n) num[0] # is the required number
лучший способ - использовать функцию импорта случайных
import random print(random.sample(range(10), 10))или без библиотеки импорта:
на popitems удаляет и возвращает произвольное значение из словаряn={} for i in range(10): n[i]=i for p in range(10): print(n.popitem()[1])n.
генерация случайных целых чисел от 0 до 9.
import numpy X = numpy.random.randint(0, 10, size=10) print(X)выход:
[4 8 0 4 9 6 9 9 0 7]
я использовал переменную для контроля диапазона
from random import randint numberStartRange = 1 numberEndRange = 9 randomNumber = randint(numberStartRange, numberEndRange) print(randomNumber)я использовал функцию печати, чтобы увидеть результаты. Вы можете прокомментировать это, если вам это не нужно.
Мне повезло с этим для Python 3.6
str_Key = "" str_RandomKey = "" for int_I in range(128): str_Key = random.choice('0123456789') str_RandomKey = str_RandomKey + str_Keyпросто добавьте символы, такие как' ABCD 'и' abcd 'или'^!~ = - >
Comments