Pythonでランダムなビット列を生成する方法をわかりやすく解説
Pythonでは、標準ライブラリの random モジュールに含まれる getrandbits() 関数を使うことで、指定したビット数のランダムなビット列(整数値)を簡単に生成できます。この関数は引数としてビット数を受け取り、その範囲内のランダムな整数を返します。
基本的な使い方
以下は、128ビットのランダムな値を生成し、16進数形式で表示する例です。
import random hash = random.getrandbits(128) print(hex(hash))
実行結果
このコードを実行すると、実行するたびに異なる128ビットのランダムな16進数文字列が出力されます。
0xa3fa6d97f4807e145b37451fc344e58c
ポイント解説
- getrandbits(128):0以上 2128 未満のランダムな整数を生成します。
- hex():整数を「0x」で始まる16進数の文字列に変換します。
この手法は、ハッシュ風の識別子やトークンのダミーデータを作成する場合などに便利です。ただし、暗号学的に安全な乱数が必要な場合は、secrets モジュールや random.SystemRandom の使用を検討してください。
-
Pythonで文字列から文字を削除する方法|スライス・replace・正規表現の使い分け
Pythonで文字列から特定の文字を削除したい場面はよくあります。目的に応じていくつかの方法があるため、それぞれの特徴と使い方を解説します。 特定のインデックスの文字を削除する(スライス) 文字列の中から指定した位置(インデックス)の1文字だけを削除したい場合は、文字列スライスを使うのが最もシンプルです。削除したい位置の前後をつなぎ合わせることで、その文字だけを取り除いた新しい文字列を作成できます。 >>> s = Hello World >>> s[:4] + s[5:] Hell World この例では、インデックス4にある「o」を除外し、それ以外の部
-
Pythonで複数行の文字列を作成する方法【初心者向け】
Pythonで複数行にわたる長い文字列を作成したい場合、通常のシングルクォート()やダブルクォート() を1組使う代わりに、三重引用符(トリプルクォート)を使用します。シングルクォート3つ()でもダブルクォート3つ()でも動作しますが、一般的にはダブルクォート3つがよく使われます。基本的な書き方以下のように、開始と終了をそれぞれ3つのクォートで囲むだけで、改行を含む文字列をそのまま定義できます。multiline_str = My multi-line string print(multiline_str)このコードを実行すると、次のような出力が得られます。My multi-line st