はじめに
ランダムな数字の一覧だったり、何でもいいから無秩序なデータの集まりが欲しいなんて時があると思います。
プログラムをすると意外とこういう状況があります。
僕自身、テストや検証時に適当な数値でランダムを使うなんてことを何回か経験したことがあります。
今回はpythonでランダムな数(乱数)を生成する方法についてのメモです。
サンプルコード
用途によって小数を使う時、整数が良い時があると思います。
小数と整数の乱数を生成する簡単なサンプルです。
まず、ライブラリでrandomをインポートする必要があります。
# random_test.py
import random
# 少数の乱数を生成する
result = random.random()
# typeはflocat
print(type(result))
print(result)
# 少数の乱数(範囲指定)を生成する
# 0~0.5までの間の乱数(小数)
result = random.uniform(0, 0.5)
# typeはflocat
print(type(result))
print(result)
# 0~100までの間の乱数(小数)
result = random.uniform(0, 100)
# typeはflocat
print(type(result))
print(result)
# 整数の乱数を生成する
# 0~100までの間の乱数(整数)
result = random.randint(0, 100)
# typeはint
print(type(result))
print(result)
# 10~20までの間の乱数(整数)
result = random.randint(10, 20)
# typeはint
print(type(result))
print(result)
このプログラムを実行すると、(乱数なので当たり前ですが)実行する度に結果が変わります。
<class 'float'>
0.5447070293610333
<class 'float'>
0.332706928967642
<class 'float'>
85.50268861864345
<class 'int'>
24
<class 'int'>
11
<class 'float'>
0.7503619798405994
<class 'float'>
0.27538565790385516
<class 'float'>
78.22796036737658
<class 'int'>
57
<class 'int'>
18
random.random()は0以上1位未満のfloat型の乱数を生成します。
random.uniform()は指定した範囲内でfloat型の乱数を生成します。
random.randint()は指定した範囲内でint型の乱数を生成します。
僕はよくrandint()を使うことがよくあります。
おわりに
今回はPythonでのランダムな数字(乱数)の生成方法についてでした。
Pythonだとライブラリをインポートするだけで済むのでとても便利ですね。
この記事がお役に立ったのならば嬉しいです。
最後までお読みいただきありがとうございました。