Pythonで乱数を使いたくなりました。
JavaScriptで1~10までの整数の乱数をつくるには「Math.floor(Math.random() * 10)+1;」と書きます。
じゃあ、Pythonではどう書くのか?
調べたことをまとめてみました。
Pythonで乱数を使うには?
まず、標準ライブラリ「random」をインポートします。
次に、「random.random()」と書く事で、乱数を使うことができます。
乱数の範囲は「0 ≦ N < 1」です。
import random
print(random.random())
'''
⇒ 0.06943036122431745
※ 実行ごとに結果が変わります
'''
Pythonならではの便利な関数
Pythonでいう「random.random()」は、JavaScriptだと「Math.random()」です。
じゃあ、これを加工して使えるように……しなくて良いのが標準ライブラリの良い所。
様々な関数が用意されています。
整数の乱数を作る
.randint()を使います。
引数は2つ。値の範囲を入力することで「a ≦ N ≦ b」の整数の乱数が作れます。
次のコードは1~10の乱数(整数のみ)を生成します。
random.randint(1 , 10)
小数点入りの乱数を作る
.uniform()を使います。
「.randint()」と同じく、範囲を指定することができます。
次のコードは1~10の乱数(浮動小数点)を生成します。
random.uniform(1 , 10)
配列から1つランダムに選出する
.choice()を使います。
a = ['a',1,'B',2,'あ']
print(random.choice(a))
他には?
詳細は公式ドキュメントをご覧ください。
まとめ
Pythonで乱数を使うには、標準ライブラリの「random」をインポートします。そうすると、ライブラリの便利な関数が使えるようになります。
わざわざライブラリをインポートしないと使えないだなんて面倒だなぁと思っていたら、便利な関数群が多数使えることを知り、その考えが吹き飛びました。
公式ドキュメントを読むと論文に出てきそうなワードがあるので、Pythonは科学の発展にも一役買っているのだろうな、と思いました。