Python のランダムレタージェネレーター
-
Python で乱数文字を生成するための
random
とstring
モジュールの使用 -
Python で
secrets
モジュールを使用してランダムな文字を生成する -
Python で
random.randint()
関数を使用してランダムな文字を生成する
Python には、乱数と文字の生成に役立つ組み込みモジュールが用意されています。これらの組み込みモジュールを実装するために複数の方法を使用して、Python でランダムな文字を生成できます。
このチュートリアルでは、Python でランダムな文字を生成するために利用できるさまざまな方法を示します。
Python で乱数文字を生成するための random
と string
モジュールの使用
Python には random
モジュールが含まれており、Python プログラムにインポートすることができます。また、プログラマの必要に応じてランダムな文字を生成するために使用できる関数もいくつか含まれています。
この場合、random
モジュールに含まれている random.choice()
関数を使用できます。random.choice()
関数は、指定されたシーケンスからランダムに選択された要素を返すために使用されます。
文字列
モジュールは、文字列を処理する関数を提供します。1つの特定の定数 ascii.letters
は、範囲 (A-Z)
および (a-z)
を含む文字列を返すために使用されます。これは、基本的に大文字と小文字の範囲を意味します。
次のコードは、random
および string
モジュールを使用して、Python でランダムな文字を生成します。
import string
import random
if __name__ == "__main__":
rstr = random.choice(string.ascii_letters)
print(rstr)
上記のコードは次の出力を提供します。
v
Python で secrets
モジュールを使用してランダムな文字を生成する
secrets
モジュールを利用して、暗号的に安定した、安全で、予測不可能な乱数を生成できます。また、主に、パスワード、アカウント認証、セキュリティトークン、URL などの重要なセキュリティ関連データの生成と維持にも使用されます。
これは、セキュリティに重点を置いているため、Python で乱数を生成する最も安全な方法であり、Python 3.6 以降のすべての Python バージョンで使用できます。
random
モジュールと同様に、secrets
モジュールには、Python でランダムな文字を生成するために使用できる choice()
関数も含まれています。
次のコードは、secrets
モジュールを使用して Python でランダムな文字を生成します。
import string
import secrets
if __name__ == "__main__":
rand = secrets.choice(string.ascii_letters)
print(rand)
上記のコードは、次の出力を提供します。
c
Python で random.randint()
関数を使用してランダムな文字を生成する
random.randint()
関数を使用して、指定した範囲内の乱数を返すことができます。プログラマーは範囲を指定できます。random.randint()
関数は、Python が提供する組み込みの random
モジュールに含まれています。この関数を使用するには、Python コードにインポートする必要があります。
random.randint()
関数は random.randrange()
関数のエイリアスであり、start
と stop
の 2つの必須パラメーターが含まれています。これらのパラメーターは、乱数または文字を生成する範囲を指定します。
Python でランダムな文字を生成するには、同じ random.randint()
関数を実装できます。
次のコードは、random.randint()
関数を使用して Python でランダムな文字を生成します。
import random
randlowercase = chr(random.randint(ord("a"), ord("z")))
randuppercase = chr(random.randint(ord("A"), ord("Z")))
print(randlowercase, randuppercase)
コードプログラムは次の出力を提供します。
s K
この記事に記載されているすべてのコードは Python でランダムな文字を生成するためのものであるため、コードが実行されるたびに出力が異なります。
Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.
LinkedIn