Python で乱数を生成する方法 (random モジュール)
Python で乱数を生成する方法を学びます。 randrange、randint、およびuniform floatの生成とシード制御を比較します。
概要
乱数の生成は、ゲームのプログラミング、データセットからのランダムなアイテムの選択、暗号化アプリケーションの作成、統計シミュレーションの実行における重要な要件です。 Python には、擬似乱数の生成を処理するための「random」という名前の専用の組み込みライブラリが用意されています。
特定の範囲内のランダムな整数が必要な場合、「random.randint(a, b)」関数が最も一般的なツールであり、両方のエンドポイントが含まれるランダムな整数を返します。あるいは、`random.random()` は、0.0 (両端を含む) と 1.0 (両端を含まない) の間の浮動小数点数を生成します。これは、カスタム境界に合わせて数学的にスケールできます。
シミュレーションとテストを反復可能にするには、`random.seed()` 関数を使用します。シード整数を指定すると、コードが実行されるたびに生成される一連の数値が同一になることが保証されます。高いセキュリティを必要とする暗号操作 (トークン生成など) の場合は、「secrets」 モジュールを選択し、標準の擬似乱数ジェネレータを避けるべきです。
コードと実行の出力
このスクリプトは、random モジュールを使用してランダムな整数、浮動小数点数を生成し、要素を選択する方法を示します。
import random
# Setting a seed for deterministic output in this example
random.seed(42)
# 1. Generate a random integer between 1 and 10 (inclusive)
random_int = random.randint(1, 10)
print("Random Integer (1-10):", random_int)
# 2. Generate a random float between 0.0 and 1.0
random_float = random.random()
print("Random Float (0-1):", round(random_float, 4))
# 3. Select a random element from a list
fruits = ["apple", "banana", "cherry"]
random_choice = random.choice(fruits)
print("Random Choice:", random_choice)Random Integer (1-10): 2
Random Float (0-1): 0.025
Random Choice: banana段階的な実装
- スクリプトの先頭にランダム モジュールをインポートします。
- 両方のエンドポイントを含むランダムな整数を生成するには、random.randint(min, max) を使用します。
- 0.0 から 1.0 までのランダムな浮動小数点数を生成するには、random.random() を使用します。
よくある質問
カスタム範囲内でランダムな浮動小数点を生成するにはどうすればよいですか?
a と b の間のランダムな浮動小数点数を取得するには、random.uniform(a, b) を使用します。
ランダム モジュールは暗号化使用に対して安全ですか?
いいえ、ランダム モジュールは擬似ランダムであるため、セキュリティを重視する目的には使用しないでください。代わりに Secret モジュールを使用してください。
関連トピック
推奨される Python リソース
関連するインタラクティブなチュートリアル、チートシート、コード比較で知識を深めてください。
Python ループ
Python ループを使用してデータを反復処理する方法を学びます。インタラクティブな例を使用して、for ループ、while ループ、ブレーク、継続、ループのベスト プラクティスをマスターします。
Python 文字列メソッドのチートシート
Python 文字列操作の完全なリファレンス ガイド。文字列プロパティの書式設定、検索、分割、置換、チェックをマスターします。
Python と JavaScript: どちらのプログラミング言語が最適ですか?
Python と JavaScript の包括的な比較。構文の違い、パフォーマンス、使用例 (バックエンドとフロントエンド)、およびコーディング例を調べます。