[python] 0と9の間のランダムな整数を生成する


Answers

import random
print(random.randint(0,9))
random.randint(a, b)

a <= N <= bのようなランダムな整数Nを返します。

ドキュメント: https://docs.python.org/3.1/library/random.html#random.randint : https://docs.python.org/3.1/library/random.html#random.randint

Question

Pythonで0から9までの任意の整数を生成するにはどうすればよいですか?

すなわち、 0




元の質問は、 複数の乱数を生成することを意味します。

Pythonで0から9までの整数を生成するにはどうすればよいですか?

しかし、多くの回答は、 random.randintrandom.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ユニークな選択肢を返す(置換なし): 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を使用してこの関連記事も参照してください。

すなわち、@ジョン・ローレンス・アスペン、@STモハメッド、@SiddTheKid、@ user14372、@zangw、et al。

2 @prashanthはこのモジュールに1つの整数を示しています。




範囲を制御するために変数を使用しました

from random import randint 
numberStartRange = 1
numberEndRange = 9
randomNumber = randint(numberStartRange, numberEndRange)
print(randomNumber)

結果を見るためにprint関数を使いました。 あなたがこれを必要としないなら、あなたはコメントができます。




from random import randint
x=[randint(0,9) for p in range(0,9)]

0〜9の範囲の10個の疑似乱数を生成します。




random.sampleは使用できる別のものです

import random
n = 1 # specify the no. of numbers
num = random.sample(range(10),  n)
num[0] # is the required number



配列のサイズを選択します(この例では、サイズを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]])



これを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]





Related