はじめに
今回はランダムな文字列を好きな長さで作れる方法をご紹介したいと思います。
例えばランダムな名前のファイルを作ったり、自分好みのパスワードを作っったりするときに非常に便利です。
Pythonの簡単なインストール方法はこちらをご覧ください。
実行関数
ランダム文字列を作ってくれるPytnon関数はこちらになります。
def generate_random_string(length):
# 使用する文字セット(英数字)
characters = string.ascii_letters + string.digits
# ランダムな文字列を生成
return ''.join(random.choices(characters, k=length))
使い方はこのようにします。
length = 10 # 生成する文字列の長さ
for _ in range(10): //何個生成するか
random_string = generate_random_string(length)
print(f"ランダム文字列: {random_string}")
説明
関数の引数(length)は文字列の長さです。
charactersはランダムに使いたい文字です。
この文字列はランダムに使いたい文字列を入れれば良く、次のようにも使用できます。
characters = “abcdefg”
以下の宣言を使うこともできます。
・string.ascii_letters
後述の ascii_lowercase
と ascii_uppercase
を合わせたもの。この値はロケールに依存しません。
小文字 'abcdefghijklmnopqrstuvwxyz'
。この値はロケールに依存せず、固定です。・
大文字 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
。この値はロケールに依存せず、固定です。
文字列 '0123456789'
です。
文字列 '0123456789abcdefABCDEF'
です。
文字列 '01234567'
です。
C
ロケールにおいて、区切り文字 (punctuation characters) として扱われる ASCII 文字の文字列です: !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
.
印刷可能な ASCII 文字で構成される文字列です。 digits
, ascii_letters
, punctuation
および whitespace
を組み合わせたものです。
まとめ
いかがだったでしょうか?ランダム文字列を作るときに、入れたい文字、入れたくない文字等色々とあると思います。Pythonでは簡単にプログラムを作って実行できるので、お好みの文字列を作ることができると思います。
こちらもよろしく