使用 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,我想将系统上的源/负载隔离为指标目的。任何替代解决方案也受到欢迎。

提前谢谢。

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

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

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

>>>custom_uuid
'a3519262-72d6-40ce-8e49-f65e8637ec07'
>>>"prefix_" + custom_uuid
>>>'prefix_a3519262-72d6-40ce-8e49-f65e8637ec07'
>>>'a3519262-72d6-40ce-8e49-f65e8637ec07' + "_suffix"
>>>'a3519262-72d6-40ce-8e49-f65e8637ec07_suffix'

最新更新