ホームページ >バックエンド開発 >Python チュートリアル >Pythonで大文字と数字を含むランダムな文字列を生成するにはどうすればよいですか?
大文字と数字を使用したランダムな文字列の生成
数字と大文字の英字を組み合わせることで、指定した長さのランダムな文字列を生成できます。これは一般に、一意の識別子またはセキュリティ関連のコードを生成するために使用されます。関係する手順は次のとおりです:
文字セットの作成:
最初の手順は、大文字と数字で構成される文字セットを作成することです。 Python の文字列モジュールは、この目的のために ascii_uppercase と数字の定数を提供します。
character_set = string.ascii_uppercase + string.digits
ランダム文字の生成:
文字セットからランダムな文字を生成するには、random を使用します。 .choice() 関数。これをリスト内包表記内に配置して、必要な長さのリストを作成します:
random_characters = [random.choice(character_set) for _ in range(N)]
文字列に変換:
最後に、ランダムな文字のリストを変換する必要があります。に文字列:
random_string = ''.join(random_characters)
例:
提供された 1 行ソリューションの使用:
random_string = ''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(N))
あるいは、random.choices( ) 関数 (Python 3.6 ):
random_string = ''.join(random.choices(string.ascii_uppercase + string.digits, k=N))
再利用可能な関数:
再利用可能にするために、カスタム関数を作成します:
def id_generator(size=6, chars=string.ascii_uppercase + string.digits): return ''.join(random.choice(chars) for _ in range(size))
使用法:
次のコマンドを使用して 6 文字のランダムな文字列を生成します。関数:
>>> id_generator() 'G5G74W'
カスタム文字セットを使用して 3 文字のランダムな文字列を生成します:
>>> id_generator(3, "6793YUIO") 'Y3U'
以上がPythonで大文字と数字を含むランダムな文字列を生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。