Python: 乱数を取得する
Pythonで乱数を取得する場合はrandomモジュールの関数を利用します。
整数の乱数を取得する場合と、
浮動小数点数の乱数を取得する場合に分けて解説します。
整数の乱数
整数の乱数を取得する場合は、 randint()関数やrandrange()関数を使用します。
randint()
書式
random.randint(下限値, 上限値)
randint()は「下限値 <= N <= 上限値」の範囲のランダムな整数Nを返します。
「0以上、9以下」や「1以上、10以下」の乱数を取得する場合は次のように指定します。
# 0 - 9 randint(0, 9) # 1 - 10 randint(1, 10)
randrange()
書式
random.randrange(下限値, 上限値 + 1)
randrange()関数の場合、 2番目の引数に「上限値 + 1」を指定する必要があります。
「0以上、9以下」や「1以上、10以下」の乱数を取得する場合は次のように指定します。
import random # 0 - 9 randrange(10) # 1 - 10 randrange(1, 11)
上の例を見ると、randint(a, b)とrandrange(a, b + 1)が同じなのがわかります。
直感的でわかりやすいのはrandint()関数の方です。
浮動小数点の乱数
浮動小数点の乱数を取得する場合は、 random()関数やuniform()関数を使用します。
random()
書式
random.random()
random()関数では0.0から1.0までの浮動小数点の乱数を取得できます。
import random for i in range(5): num = random.random() print(num) # 実行結果 0.6471335147014281 0.47616744289649027 0.2913575753266705 0.5356048783250246 0.39651115332836784
uniform()
書式
random.uniform(a, b)
uniform(a, b)でa以上、b以下の浮動小数点の乱数を取得できます。
import random for i in range(5): num = random.uniform(1, 5) # 1以上 5以下 print(num) # 実行結果 1.661517011064809 2.6776110958100903 4.022783632277454 1.2966983600593047 3.7979594988756507