uuid是128位的全局唯一标识符(univeral unique identifier),用32位字符串表现.
python中自带了uuid模块来进行uuid的生成和管理工作.具体方法有如下几个:
uuid.uuid1() 基于MAC地址,时间戳,随机数来生成唯一的uuid,全球范围内的唯一性。
uuid.uuid2() 算法与uuid1相同,不同的是把时间戳的前4位置换为POSIX的UID。python中没有基于DCE的算法,所以python的uuid模块中没有uuid2这个方法。
uuid.uuid3(namespace,name) 计算一个命名空间和名字的md5散列值来给出一个uuid,所以可以保证命名空间中的不同名字具有不同的uuid
namespace是在uuid模块中本身给出的一些值。比如uuid.NAMESPACE_DNS,uuid.NAMESPACE_OID,uuid.NAMESPACE_OID。本身也是UUID对象,根据一定的规则计算得出。
uuid.uuid4() 伪随机数得到uuid,有一定概率重复的
uuid.uuid5(namespace,name) 和uuid3基本相同,采用的散列算法是sha1