Pythonのuuidモジュールは、不変のUUIDオブジェクトと、さまざまなバージョンのUUIDを生成するための関数を提供しています。UUIDはUniversally Unique Identifier(ユニバーサルにユニークな識別子)の略で、異なるシステム間で使用できる固有のIDを生成するために使用されます。
Pythonにおけるuuidモジュール
uuid1()
この関数は、ホストのMACアドレスと現在の時間に基づいてUUIDを生成します。
import uuid
# uuid1()を使用してUUIDを生成
result = uuid.uuid1()
print(result)
35c8204e-1d15-11ea-a5f1-0800200c9a66
uuid3()
uuid3()メソッドを使用すると、名前空間と名前のMD5ハッシュに基づいてUUIDを生成できます。
namespace = uuid.NAMESPACE_DNS
name = "example.com"
# uuid3()を使用してUUIDを生成
result = uuid.uuid3(namespace, name)
print(result)
6fa459ea-ee8a-3ca4-894e-db77e160355e
uuid4()
uuid4()メソッドは、以下に示すようにランダムなUUIDを作成します。
# uuid4()を使用してUUIDを生成
result = uuid.uuid4()
print(result)
f50ec0b7-f960-400d-91f0-c42a6d44e3d7
uuid5()
uuid3()と同様に、uuid5()メソッドは名前空間と名前のSHA-1ハッシュに基づいてUUIDを生成します。
namespace = uuid.NAMESPACE_DNS
name = "example.com"
# uuid5()を使用してUUIDを生成
result = uuid.uuid5(namespace, name)
print(result)
c74a196f-f19d-5ea9-bffd-a2742432fc9c
ユニバーサルにユニークな識別子は、システム間でオブジェクトの固有性を保証するために極めて重要です。Pythonのuuidモジュールは、uuid1()、uuid3()、uuid4()、およびuuid5()などの関数を使用して、異なるタイプのUUIDを生成するための直感的な方法を提供します。
FAQs
uuid3()とuuid5()の主な違いは何ですか? uuid3()はMD5ハッシュを使用し、uuid5()はSHA-1ハッシュを使用します。
uuid4()は何らかのシステムパラメータに基づいていますか? いいえ、uuid4()はランダムなUUIDを生成します。
uuid1()関数はホストのMACアドレスなしで使用できますか? はい、MACアドレスが利用できない場合、ランダムな値が使用されます。
uuidモジュールで作成されたUUIDは固有であると保証されていますか? 衝突の可能性は非常に低いですが、ゼロではありません。
UUIDを文字列に変換するにはどうすればよいですか? UUIDオブジェクトを文字列に変換するには、
str()関数を使用できます。