python uuid模組學習

2021-10-24 19:09:19 字數 2819 閱讀 3450

uuid模組:

通用唯一識別符號(universally unique identifie),uuid可以保證在空間和時間上的唯一性. 它是通過mac位址, 時間戳, 命名空間, 隨機數, 偽隨機數來保證生成id的唯一性, 有著固定的大小( 128 bit ). 它的唯一性和一致性特點使得可以無需註冊過程就能夠產生乙個新的uuid. uuid可以被用作多種用途, 既可以用來短時間內標記乙個物件, 也可以可靠的辨別網路中的永續性物件.

python中的uuid模組提供四種演算法分別是uuid1.(), uuid3.(),uuid4.(),uuid5.()。

uuid1.()是基於時間戳產生的uuid;

uuid3.(namespace, str)是通過md5雜湊值產生的uuid,如果名字相同產生的uuid號也相同。md5雜湊值,也可以成為一種加密演算法。

uuid4.()是通過偽隨機數產生的,有一定的機率產生相同的uuid,概率可算。

uuid5.(namespace, str)是基於sha1雜湊值產生的uuid。跟uuid3一樣,sha1雜湊值也是一種加密演算法。

uuid3和5中的namesspace有一些由預定義uuid值標識的公開的命名空間,分別用於處理dns、url、iso oid和x.500識別名(distinguished name)。通過生成和儲存uuid值,還可以定義新的特定於應用的命名空間。

示例:

[root@localhost ]# python

python 3.7.9(

default

, sep 8

2020,16

:48:29

)[gcc 4.8

.520150623

(red hat 4.8.5-

39)] on linux

type "help",,

"credits" or "license"

for more information.

>>

> import uuid

>>

> uuid.

uuid1()

uuid

('ba14004c-0e94-11eb-ba17-000c29aa80c9'

)>>

>

>>

> uuid.

uuid1()

uuid

('bb7dbe1e-0e94-11eb-ba17-000c29aa80c9'

)>>

> uuid.

uuid3

(uuid.

)//注釋:在uuid.後雙擊table就會出現一些namespace

uuid.

enum

( uuid.reserved_ncs uuid.os

uuid.namespace_dns uuid.rfc_4122 uuid.sys

uuid.namespace_oid uuid.

safeuuid

( uuid.

uuid1

(uuid.namespace_url uuid.

uuid

( uuid.

uuid3

(uuid.namespace_x500 uuid.

bytes_

( uuid.

uuid4

(uuid.reserved_future uuid.

getnode

( uuid.

uuid5

(uuid.reserved_microsoft uuid.

int_

(>>

> uuid.

uuid3

(uuid.namespace_dns,

"a")

uuid

('4c104dd0-4821-30d5-9ce3-0e7a1f8b7c0d'

)>>

> uuid.

uuid3

(uuid.namespace_dns,

"a")

uuid

('4c104dd0-4821-30d5-9ce3-0e7a1f8b7c0d'

)>>

> uuid.

uuid3

(uuid.namespace_dns,

"b")

uuid

('c4f8d206-80ca-33ae-a830-f58835b1b131'

)>>

> uuid.

uuid5

(uuid.namespace_dns,

"b")

uuid

('3f10dbe8-4cbd-5e31-9b1f-af0cb9dda9cf'

)>>

> uuid.

uuid5

(uuid.namespace_dns,

"a")

uuid

('4f3f2898-69e3-5a0d-820a-c4e87987dbce'

)>>

> uuid.

uuid4()

uuid

('24ee8bc0-a094-42c1-966b-54e2a000154a'

)>>

> uuid.

uuid4()

uuid

('fb0b82e2-31d7-4e67-8e83-66a78766d824'

)>>

>

動手測試一下,可以體驗體驗uuid產生的過程,理解更深刻。

地鐵python uuid模組

import uuid 用於生成乙個全域性唯一的id,全域性唯一的識別符號 print uuid.uuid1 32個長度,每個字元有16個選擇 16 32很大的數字。mac 隨機的 print uuid.uuid3 uuid.namespace dns,zhangsan 生成固定的uuid,md5 ...

Python uuid生成唯一ID

uuid uuid是128位的全域性唯一識別符號 univeral unique identifier 通常用32位的乙個字串的形式來表現。有時也稱guid global unique identifier python中自帶了uuid模組來進行uuid的生成和管理工作。具體從哪個版本開始有的不清楚...

python UUID唯一識別符號

uuid 通用唯一識別符號 universally unique identifier 對於所有的uuid它可以保證在空間和時間上的唯一性.它是通過mac位址,時間戳,命名空間,隨機數,偽隨機數來保證生成id的唯一性,有著固定的大小 128 bit python的uuid模組提供uuid類和函式uu...