ホームページ >バックエンド開発 >Python チュートリアル >Pythonで大文字と数字のランダムな文字列を生成するにはどうすればよいですか?

Pythonで大文字と数字のランダムな文字列を生成するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-08 01:51:10371ブラウズ

How to Generate Random Strings of Uppercase Letters and Digits in Python?

大文字と数字で構成されるランダムな文字列の生成

大文字と数字を含むランダムな文字列の生成は、さまざまなアプリケーションで共通の要件です。これを実現する手順は次のとおりです:

  1. 必要なモジュールをインポートします: まず、ASCII 文字と乱数生成用の文字列モジュールとランダム モジュールをそれぞれインポートします。
  2. ASCII シーケンスを連結します: string.ascii_uppercase とstring.digitals シーケンスを使用して、すべての大文字と数字を含む文字列を作成します。
  3. ランダムな文字を生成する: リスト内包表記を利用して、それぞれの連結されたシーケンスから 1 つ選択してランダムな文字のリストを生成します。
  4. 文字列に結合します: リスト内の文字を結合します。 Python の join メソッドを使用した単一の文字列。

コード例:

次のコードは上記の手順を実装します:

import string
import random

def id_generator(size=6):
    chars = string.ascii_uppercase + string.digits
    return ''.join(random.choice(chars) for _ in range(size))

暗号的に安全なバージョン:

拡張版セキュリティを確保するには、次の行の使用を検討してください:

''.join(random.SystemRandom().choice(string.ascii_uppercase + string.digits) for _ in range(N))

Python 3.6 の簡略化:

Python 3.6 以降を使用している場合は、次の簡略化されたコードを使用できます:

''.join(random.choices(string.ascii_uppercase + string.digits, k=N))

以上がPythonで大文字と数字のランダムな文字列を生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。