random -- 乱数の生成

このモジュールは擬似乱数生成器(PRNG)を実装しています。

このモジュールは、該当する :term:`CPython` モジュールのサブセットを実装しています。 詳しくはオリジナルの CPython ドキュメンテーションを参照してください: random .

注釈

乱数生成の範囲には次の表記法を用いています:

  • () は開区間を表す括弧で、端点は含みません。たとえば、(0, 1) は 0 より大きく 1 より小さいことを意味します。集合表記では (0, 1) = {x | 0 < x < 1} となります。
  • [] は、すべての限界点を含む閉区間の括弧です。たとえば、[0, 1] は 0 以上 1 以下を意味し、集合表記では [0, 1] = {x | 0 <= x <= 1} となります。

注釈

randrange(), randint(), choice() 関数は、ビルド時に MICROPY_PY_URANDOM_EXTRA_FUNCS 設定オプションを有効にした場合にの利用できます。

整数を生成する関数

random.getrandbits(n)

n 桁の乱数ビットを持つ整数を返します(0 <= n <= 32)。

random.randint(a, b)

[a, b] の範囲の整数の乱数を返します。

random.randrange(stop)
random.randrange(start, stop)
random.randrange(start, stop[, step])

1番目の形式は、[0, stop) の範囲の整数の乱数を返します。2番目の形式は、[start, stop)の範囲の整数の乱数を返します。3番目の形式は、[start, stop)の範囲の step 単位の整数の乱数を返します。たとえば randrange(1, 10, 2) とすると、1 から 9 までの奇数が返されます。

浮動小数点数を返す関数

random.random()

[0.0, 1.0) "の範囲の浮動小数点数の乱数を返します。

random.uniform(a, b)

a" <= b の場合は a <= N <= b の範囲、 b < a の場合は b <= N <= a の範囲の浮動小数点数の乱数 N を返します。

その他の関数

random.seed(n=None, /)

乱数生成モジュールを、整数の種 n で初期化します。引数がない(または None を与えた)場合、(ポートでサポートしていれば)真の乱数(通常はハードウェアで生成された乱数)で PRNG を初期化します。

None を与えるのは、 MICROPY_PY_URANDOM_SEED_INIT_FUNC ががポートで有効になっている場合のみ動作し、そうでない場合は ValueError が発生します。

random.choice(sequence)

sequence (タプル、リスト、または添え字操作をサポートする任意のオブジェクト)からランダムに1つの項目を選択して返します。