总结了一份python生成4种UUID的代码:UUID用4种uuid生成方法:uuid1: 基于时间戳 由MAC地址、当前时间戳、随机数字保证全球范围内的唯一性但是由于MAC地址使用会带来安全问题,局域网内使用IP代替MACuuid3() 基于名字和MD5散列值 通过计算名字和命名空间的MD5散列值得到的,保证了同一命名空间中不同名字的唯一性,不同命名空间的唯一性但是同一命名空间相同名字生成相同的uuiduuid4() 基于随机数 由伪随机数得到的,有一定重复概率,这个概率是可以算出来的uuid5() 基于名字和SAHI值 算法和uuid3相同,不同的是使用SAHI算法,下面我们就来说一说关于怎么用python生成数据?我们一起去了解并探讨一下这个问题吧!
怎么用python生成数据
总结了一份python生成4种UUID的代码:
UUID用4种uuid生成方法:uuid1: 基于时间戳 由MAC地址、当前时间戳、随机数字。保证全球范围内的唯一性。但是由于MAC地址使用会带来安全问题,局域网内使用IP代替MACuuid3() 基于名字和MD5散列值 通过计算名字和命名空间的MD5散列值得到的,保证了同一命名空间中不同名字的唯一性,不同命名空间的唯一性。但是同一命名空间相同名字生成相同的uuid。uuid4() 基于随机数 由伪随机数得到的,有一定重复概率,这个概率是可以算出来的uuid5() 基于名字和SAHI值 算法和uuid3相同,不同的是使用SAHI算法
话不多说,代码如下:
import uuid
class UUIDUtils:
# uuid1: 基于时间戳 由MAC地址、当前时间戳、随机数字
def get_uuid_basedon_timestamps(self):
return str(uuid.uuid1())
# uuid3() 基于名字和MD5散列值 通过计算名字和命名空间的MD5散列值得到的,保证了同一命名空间中不同名字的唯一性,不同命名空间的唯一性。
def get_uuid_basedon_md5(self, name):
return str(uuid.uuid3(uuid.NAMESPACE_DNS, name))
# 随机数的uuid,不推荐使用
def get_uuid_basedon_randomnumber(self):
return str(uuid.uuid4())
# uuid5同样根据传入的namespace和一个由调用者指定字符串生成uuid,如uuid3不同的是,它使用SHA1算法。
def get_uuid_basedon_sha1(self, name):
return str(uuid.uuid5(uuid.NAMESPACE_DNS, name))
t = UUIDUtils()
print(t.get_uuid_basedon_timestamps())
print(t.get_uuid_basedon_md5('test'))
print(t.get_uuid_basedon_randomnumber())
print(t.get_uuid_basedon_sha1('test'))