本文介绍了python uuid1 是按时间戳顺序排列的吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Python docs 指出 uuid1 使用当前时间来形成 uuid 值.但我找不到确保 UUID1 是顺序的参考.

>>>导入 uuid>>>u1 = uuid.uuid1()>>>u2 = uuid.uuid1()>>>u1<u2真的>>>
解决方案

但并非总是如此:

>>>定义测试(n):...旧 = uuid.uuid1()...打印旧...对于范围内的x(n):... new = uuid.uuid1()...如果旧的 >= 新的:...打印OOops"... 休息... 旧 = 新... 打印新的>>>测试(1000000)fd4ae687-3619-11e1-8801-c82a1450e52f面向对象00000035-361a-11e1-bc9f-c82a1450e52f

Python docs states that uuid1 uses current time to form the uuid value. But I could not find a reference that ensures UUID1 is sequential.

>>> import uuid
>>> u1 = uuid.uuid1()
>>> u2 = uuid.uuid1()
>>> u1 < u2
True
>>> 
解决方案

But not always:

>>> def test(n):
...     old = uuid.uuid1()
...     print old
...     for x in range(n):
...             new = uuid.uuid1()
...             if old >= new:
...                     print "OOops"
...                     break
...             old = new
...     print new
>>> test(1000000)
fd4ae687-3619-11e1-8801-c82a1450e52f
OOops
00000035-361a-11e1-bc9f-c82a1450e52f

这篇关于python uuid1 是按时间戳顺序排列的吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-23 17:50