使用uuid实现自定义前缀

时间:2017-07-29 07:58:03

标签: uuid

我浏览了python UUID模块的文档。

>>> uuid.uuid4()
UUID('82fe5629-6680-4b13-a4e3-7a082f10e038')
>>> uuid.uuid4()
UUID('b2721a42-5645-4deb-bbbd-6ba1a55820d8')
>>> uuid.uuid4()
UUID('632736f8-a935-4335-a56d-56cd8ebc7dbf')
>>> uuid.uuid4()
UUID('a3519262-72d6-40ce-8e49-f65e8637ec07')

每次生成随机值。但我的问题是,如果我需要修复第一个值,其余部分将是随机的。有可能吗?

如,

>>> uuid.somefn("a3519262")
UUID('a3519262-72d6-40ce-8e49-f65e8637ec07')
>>> uuid.somefn("a3519262")
UUID('a3519262-a935-4335-a56d-56cd8ebc7dbf')

原因我一直在寻找这个解决方案: 我有多个系统与集中式系统通信,因此基于uuid我想在系统上隔离源/负载以用于度量目的。任何替代解决方案也是受欢迎的。

提前致谢。

1 个答案:

答案 0 :(得分:0)

有时一直在寻找此解决方案,但只是为了完成您的工作!我认为你会用一种非常hacky的方式来实现这一点。

***Exception: thread blocked indefinitely in an MVar operation

因此您可以在将字符串存储到数据库或类似的东西之前对其进行操作。

>>>custom_uuid = str(uuid.uuid4())
>>>custom_uuid
'a3519262-72d6-40ce-8e49-f65e8637ec07'