#!/usr/bin/python # -*- coding: UTF-8 -*- import uuid ''' uuid1():这个是根据当前的时间戳和MAC地址生成的,最后的12个字符408d5c985711对应的就是MAC地址,因为是MAC地址,那么唯一性应该不用说了。但是生成后暴露了MAC地址这就很不好了。 uuid3():里面的namespace和具体的字符串都是我们指定的,然后呢···应该是通过MD5生成的,这个我们也很少用到,莫名其妙的感觉。 uuid4():这是基于随机数的uuid,既然是随机就有可能真的遇到相同的,但这就像中奖似的,几率超小,因为是随机而且使用还方便,所以使用这个的还是比较多的。 uuid5():这个看起来和uuid3()貌似并没有什么不同,写法一样,也是由用户来指定namespace和字符串,不过这里用的散列并不是MD5,而是SHA1. ''' name = 'test_name' # namespace = 'test_namespace' namespace = uuid.NAMESPACE_URL print uuid.uuid1() print uuid.uuid3(namespace,name) print uuid.uuid4() print uuid.uuid5(namespace,name)
运行结果:
275e1dc0-6178-11e9-b35f-005056c00008
f15bb8f8-2f0c-3b7c-9ee7-79b874d9837b
5151bf6b-ea42-4193-8e7b-32644e9adaaf
62740382-6394-5d1c-b9ef-d5a953ac1213