{category}

Python - 数学関連

random

ランダム(標準ライブラリ

意味 乱数を作る


randomとは?

randomモジュールは、乱数を生成するための関数を提供します。サイコロを振ったり、ランダムな順番でデータを取り出したりする際に役立ちます。

randomの具体的な使い方

乱数生成とリストからのランダム選択

import random

# 1から10までのランダムな整数を生成
random_number = random.randint(1, 10)
print(f"ランダムな数字: {random_number}")

# リストからランダムに要素を選択
fruits = ['りんご', 'バナナ', 'オレンジ', 'ぶどう', 'メロン']
random_fruit = random.choice(fruits)
print(f"ランダムに選ばれたフルーツ: {random_fruit}")

👇出力結果

ランダムな数字: 7
ランダムに選ばれたフルーツ: オレンジ

randomモジュールを使用して、乱数の生成とリストからのランダムな要素の選択を行います。randint()関数で整数の乱数を生成し、choice()関数でリストからランダムに要素を選びます。

リストのシャッフルとサンプリング

import random

# リストをシャッフル
numbers = list(range(1, 11))  # 1から10までのリスト
random.shuffle(numbers)
print(f"シャッフルされた数字: {numbers}")

# リストから重複なしでランダムにサンプリング
sampled_numbers = random.sample(numbers, 5)
print(f"サンプリングされた5つの数字: {sampled_numbers}")

👇出力結果

シャッフルされた数字: [3, 7, 1, 9, 4, 2, 8, 6, 5, 10]
サンプリングされた5つの数字: [3, 9, 2, 6, 10]

randomモジュールを使用して、リストのシャッフルとサンプリングを行います。shuffle()関数でリストの要素をランダムに並び替え、sample()関数で指定した数の要素をランダムに選びます。

randomに関するよくある質問

Q. randomモジュールは暗号に使える?
A. いいえ、randomモジュールは暗号学的に安全ではありません。暗号や安全性が重要な用途には、secrets モジュールを使用すべきです。randomは一般的なプログラミングやシミュレーション用途に適しています。
Q. 乱数のシードとは何ですか?
A. シードは乱数生成の開始点を決定する値です。同じシードを使用すると、毎回同じ乱数列が生成されます。random.seed()関数でシードを設定できます。これはテストやデバッグ時に再現性が必要な場合に便利です。
Q. ランダムな小数を生成するには?
A. random.random()関数を使用すると、0以上1未満のランダムな浮動小数点数を生成できます。特定の範囲の小数が必要な場合は、random.uniform(a, b)を使用して、a以上b以下のランダムな浮動小数点数を生成できます。

randomが学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、Pythonのrandomやre.search、pdb、re.match、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


Pythonを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!Pythonはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

re.search

文字列の部分一致

種類: 正規表現

pdb

プログラムを一行ずつ実行

種類: デバッグ

re.match

文字列の先頭一致

種類: 正規表現

<<=

左ビットシフトして代入

種類: 代入演算子

pip

Pythonパッケージを管理

種類: パッケージ管理