使用 Python 中的 UUID 生成隨機 ID


UUID的全稱是通用唯一識別碼(Universally Unique Identifier),它是一個Python庫,支援生成128位隨機物件的ID。

UUID的優點

  • 如前所述,我們可以使用它為隨機物件生成唯一的隨機ID。
  • 此ID可用於密碼學和雜湊應用。
  • 此ID可用於生成隨機文件以及地址等。

方法一

使用 uuid1()

示例程式碼

import uuid
print ("Random id using uuid1() is : ",end="")
print (uuid.uuid1())

輸出

Random id using uuid1() is : 4adeede2-e5d8-11e8-bd27-185e0fd4f8b3

uuid1() 的表示形式

位元組 - 它以16位元組字串的形式返回ID。

整數 - 它以128位整數的形式返回ID。

十六進位制 - 它以32個字元的十六進位制字串形式返回隨機ID。

uuid1() 的組成部分

版本 - UUID 的版本號。

變體 - 它確定 UUID 的內部佈局。

uuid1() 的欄位

time_low - 指示 ID 的前 32 位。

time_mid - 指示 ID 的接下來的 16 位。

time_hi_version - 指示 ID 的接下來的 16 位。

clock_seq_hi_variant - 指示 ID 的接下來的 8 位。

clock_seq_low - 指示 ID 的接下來的 8 位。

node - 指示 ID 的最後 48 位。

time - 指示 ID 的時間分量欄位。

clock_seq - 指示 14 位序列號。

示例程式碼

import uuid
id = uuid.uuid1()
# Representations of uuid1()
print ("Different Representations of uuid1() are : ")
print ("Representation in byte : ",end="")
print (repr(id.bytes))
print ("Representation in int : ",end="")
print (id.int)
print ("Representation in hex : ",end="")
print (id.hex)
print("\n")
# Components of uuid1()
print ("Different Components of uuid1() are : ")
print ("UUID Version : ",end="")
print (id.version)
print ("UUID Variant : ",end="")
print (id.variant)
print("\n")
# Fields of uuid1()
print ("Fields of uuid1() are : ")
print ("UUID Fields : ",end="")
print (id.fields)
print("\n")
# uuid1() Time Component
print ("uuid1() time Component is : ")
print ("Time component : ",end="")
print (id.node)

輸出

Different Representations of uuid1() are :
Representation in byte : b'\x1a\xd2\xa7F\xe5\xe4\x11\xe8\xbd\x9c\x18^\x0f\xd4\xf8\xb3'
Representation in int : 35653703010223099234452630771665795251
Representation in hex : 1ad2a746e5e411e8bd9c185e0fd4f8b3

Different Components of uuid1() are :
UUID Version : 1
UUID Variant : specified in RFC 4122

Fields of uuid1() are :
UUID Fields : (450012998, 58852, 4584, 189, 156, 26792271607987)

uuid1() time Component is :
Time component : 26792271607987

方法二

使用 uuid4()

示例程式碼

import uuid
id = uuid.uuid4()
# Id generated using uuid4()
print ("The id generated using uuid4() : ",end="")
print (id)

輸出

The id generated using uuid4() : 21764219-e3d9-4bd3-a768-0bbc6e376bc0

更新於:2019年7月30日

瀏覽量:775

啟動您的 職業生涯

完成課程獲得認證

開始學習
廣告