gpt4 book ai didi

python - 根据 MA​​C 地址和用户名生成确定性 UUID

转载 作者:行者123 更新时间:2023-12-03 19:51:05 25 4
gpt4 key购买 nike

我正在编写一个 Python 例程来生成 DICOM 文件。在这种情况下,我需要指定 Instance Creator UID 标签,用于唯一标识创建 DICOM 文件的设备。所以我需要一个函数来为给定的机器和启动 DICOM 创建例程的特定用户生成这样的 UID。

我猜 UUID 可以从 MAC 地址和用户名创建。但是python的uuid模块生成的UID是随机的,所以每次调用例程的UID都不一样。

有没有办法根据 MA​​C 地址和用户名生成确定性 UID?

最佳答案

UUID3 和 5 是基于名称的 uuid,因此它们不会随机更改(按时间分量)。

import uuid
import getpass

username = getpass.getuser(). # Username
node = hex(uuid.getnode()) # MAC address

urn = 'urn:node:%s:user:%s' % (node, username)

for i in range(3):
print (uuid.uuid3(uuid.NAMESPACE_DNS, urn))

输出:

4b3be55c-c6d9-3252-8b61-b16700fa6528
4b3be55c-c6d9-3252-8b61-b16700fa6528
4b3be55c-c6d9-3252-8b61-b16700fa6528

欲了解更多信息,请联系 https://pymotw.com/3/uuid/

关于python - 根据 MA​​C 地址和用户名生成确定性 UUID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60614392/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com