由MAC地址、当前时间戳、随机数生成。可以保证全球范围内的唯一性,但MAC的使用同时带来安全性问题,局域网中可以使用IP来代替MAC。
import uuid print(uuid.uuid1())
算法与uuid1相同,不同的是把时间戳的前4位置换为POSIX的UID。实际中很少用到该方法。
通过计算名字和命名空间的MD5散列值得到,保证了同一命名空间中不同名字的唯一性,和不同命名空间的唯一性,但同一命名空间的同一名字生成相同的uuid。
import uuid name = "test_name" namespace = "test_namespace" print(uuid.uuid3(namespace, name))
由伪随机数得到,有一定的重复概率。
import uuid print(uuid.uuid4())
使用 Secure Hash Algorithm 1 算法代替uuid3中的MD5算法。
import uuid name = "test_name" namespace = "test_namespace" print(uuid.uuid5(namespace, name))
原文:https://www.cnblogs.com/baicai37/p/13250994.html