PythonでランダムなUTF-8文字列を生成する方法について説明します。この記事は、Stack Overflowの質問「PythonでランダムなUTF-8文字列を生成する」を参考にしています。
まず、以下のコードを見てみましょう。
import random
def get_random_unicode(length):
try:
get_char = unichr
except NameError:
get_char = chr
include_ranges = [
(0x0021, 0x0021),
(0x0023, 0x0026),
(0x0028, 0x007E),
(0x00A1, 0x00AC),
(0x00AE, 0x00FF),
(0x0100, 0x017F),
(0x0180, 0x024F),
(0x2C60, 0x2C7F),
(0x16A0, 0x16F0),
(0x0370, 0x0377),
(0x037A, 0x037E),
(0x0384, 0x038A),
(0x038C, 0x038C),
]
alphabet = [get_char(code_point) for current_range in include_ranges
for code_point in range(current_range[0], current_range[1] + 1)
]
return ''.join(random.choice(alphabet) for i in range(length))
if __name__ == '__main__':
print('A random string: ' + get_random_unicode(10))
このコードは、指定した長さのランダムなUTF-8文字列を生成します。include_ranges
には、生成したい文字のUnicode範囲を指定します。この例では、いくつかの基本的な文字範囲が含まれていますが、必要に応じてこれを拡張することができます。
このコードを実行すると、「A random string: 」に続いて10文字のランダムなUTF-8文字列が出力されます。
このように、Pythonを使ってランダムなUTF-8文字列を生成することは非常に簡単です。このコードを参考に、自分のプロジェクトで必要な文字列を生成してみてください。