[Python] uuidモジュールを利用して固有のIDを作成

Pythonのuuidモジュールは、不変のUUIDオブジェクトと、さまざまなバージョンのUUIDを生成するための関数を提供しています。UUIDはUniversally Unique Identifier(ユニバーサルにユニークな識別子)の略で、異なるシステム間で使用できる固有のIDを生成するために使用されます。

Pythonにおけるuuidモジュール

uuid1()

この関数は、ホストのMACアドレスと現在の時間に基づいてUUIDを生成します。

python
import uuid

# uuid1()を使用してUUIDを生成
result = uuid.uuid1()
print(result)
35c8204e-1d15-11ea-a5f1-0800200c9a66

uuid3()

uuid3()メソッドを使用すると、名前空間と名前のMD5ハッシュに基づいてUUIDを生成できます。

python
namespace = uuid.NAMESPACE_DNS
name = "example.com"

# uuid3()を使用してUUIDを生成
result = uuid.uuid3(namespace, name)
print(result)
6fa459ea-ee8a-3ca4-894e-db77e160355e

uuid4()

uuid4()メソッドは、以下に示すようにランダムなUUIDを作成します。

python
# uuid4()を使用してUUIDを生成
result = uuid.uuid4()
print(result)
f50ec0b7-f960-400d-91f0-c42a6d44e3d7

uuid5()

uuid3()と同様に、uuid5()メソッドは名前空間と名前のSHA-1ハッシュに基づいてUUIDを生成します。

python
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

  1. uuid3()とuuid5()の主な違いは何ですか? uuid3()はMD5ハッシュを使用し、uuid5()はSHA-1ハッシュを使用します。
  2. uuid4()は何らかのシステムパラメータに基づいていますか? いいえ、uuid4()はランダムなUUIDを生成します。
  3. uuid1()関数はホストのMACアドレスなしで使用できますか? はい、MACアドレスが利用できない場合、ランダムな値が使用されます。
  4. uuidモジュールで作成されたUUIDは固有であると保証されていますか? 衝突の可能性は非常に低いですが、ゼロではありません。
  5. UUIDを文字列に変換するにはどうすればよいですか? UUIDオブジェクトを文字列に変換するには、str()関数を使用できます。
© Copyright 2023 CLONE CODING