Python
 Computer >> コンピューター >  >> プログラミング >> Python

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


random.choice(list_of_choices)を使用して、ランダムな文字を取得できます。次に、これをループしてリストを取得し、最後にこのリストに参加して文字列を取得します。ここでの選択肢のリストは大文字と数字です。例:

import string
import random
def get_random_string(length):
    random_list = []
    for i in xrange(length):
        random_list.append(random.choice(string.ascii_uppercase + string.digits))
    return ''.join(random_list)
print get_random_string(10)

これにより、出力が得られます:

'35WO8ZYKFV'

これは、1行で実行することもできます:

>>> ''.join(random.choice(string.ascii_uppercase + string.digits) for _ in xrange(10))
'35WO8ZYKFV'

Python 3には、ランダムがあります。ランダムな文字列の長さとして2番目の引数を取るchoicesメソッド。さらに短いバージョンを取得するために使用できます:

>>> ''.join(random.choices(string.ascii_uppercase + string.digits), k=10)
'35WO8ZYKFV'

  1. Pythonで文字列に大文字のみが含まれているかどうかを確認するにはどうすればよいですか?

    文字列に大文字のみが含まれているかどうかは、2つの方法で確認できます。 1つ目は、メソッドisupper()を使用することです。 例 print( 'Hello world'.isupper()) print('HELLO'.isupper()) 出力 False True 同じ結果に正規表現を使用することもできます。大文字のみを照合する場合は、正規表現 ^ [A-Z] + $を使用してre.match(regex、string)を呼び出すことができます。 例 import re print(bool(re.match('^[A-Z]+$',

  2. Pythonで文字列に小文字のみが含まれているかどうかを確認するにはどうすればよいですか?

    2つの方法を使用して、文字列に小文字のみが含まれているかどうかを確認できます。 1つ目は、メソッドislower()を使用することです。 例: print('Hello world'.islower()) print('hello world'.islower()) 出力 False True 同じ結果に正規表現を使用することもできます。小文字のみを照合する場合は、正規表現 ^ [a-z] + $を使用してre.match(regex、string)を呼び出すことができます。たとえば、 print(bool(re.match('^[a-z]+$&#