当我使用python UUID()
模块中的uuid
函数检查我们的一个测试用户时,我遇到了这种奇怪的行为。
from uuid import UUID
uuid1 = UUID('00000000-0000-0000-0000-000000000000', version=1)
print uuid1
00000000-0000-1000-8000-000000000000
没有它按预期工作的版本
uuid0 = UUID('00000000-0000-0000-0000-000000000000')
print uuid0
00000000-0000-0000-0000-000000000000
这是预期的行为吗?我还需要担心其他任何副作用吗?
有没有更安全或更好的方法来测试python中的uuids我应该使用而不是UUID()
函数或者我滥用这个函数?
答案 0 :(得分:2)
来自代码评论
The 'version' argument is optional; if given, the resulting UUID will have its variant and version set according to RFC 4122, overriding the given 'hex', 'bytes', 'bytes_le', 'fields', or 'int'.
要生成uuid,您可以使用以下功能之一,具体取决于uuid类型
uuid1(), uuid3(), uuid4(), uuid5()
因为您已经知道UUID()将UUID解析为对象