Pythonにはrandomというランダム関数が用意されています。
ランダム関数を使うと、数値の範囲を指定して、数値をランダムに生成することができます。
例えば、サイコロゲームを作成しようとした場合など、1~6の数値をランダムに生成させて利用します。
以下のコードは1~6のいずれかの数値を出力するコードです。
import random print(random.randint(1,6))
「randint」は整数値を返す場合に使用し、「(1,6)」はその範囲が1~6になるように設定しています。
このように、random関数はゲームの要素があるプログラムを作る時によく使われます。
また、不規則な動作をさせる場合にもrandom関数を使用します。
例えば、作業効率のツールを作成する場合、サーバーにアクセスすることがよくあります。
自動化できるので繰り返して何度もアクセスさせることもあるのですが、コンピューターの処理速度でこれをやるとサーバーに大きな負荷がかかってしまいます。
すると、場合によってはスパム扱いされたり、アクセスを制限されてしまうこともあります。
このため、一回ごとに間隔を空けてアクセスするようにしています。
この時、いつも同じ間隔でアクセスしていると機械的な動作になってしまい、制限される可能性が高まります。
そこで、開ける間隔をランダムで変化させ、自然な感じで間を開けるようにすることもあります。
以下のコードは3.5秒~8.5秒の間、処理を中断させるコードです。
import random import time print('Hello') time.sleep(random.uniform(3.5,8.5)) print('Bye')
「time.sleep」は指定した秒数の間、処理を中断させる関数です。
「uniform」は小数点の値を返す場合に使用し、「(3.5,8.5)」はその範囲が3.5秒~8.5秒になるように設定しています。
練習問題
上記の「Hello」と「Bye」を出力する処理を5回繰り返すプログラムを作成してください。
作成できたら、実行して、1回ごとに出力される間隔が異なることを確認します。