如何在 Python 中创建 GUID/UUID

新手上路,请多包涵

如何在 Python 中创建独立于平台的 GUID/UUID?我听说有一种在 Windows 上使用 ActivePython 的方法,但它只是 Windows,因为它使用 COM。有没有使用普通 Python 的方法?

原文由 Jonathon Watney 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 700
2 个回答

The uuid module provides immutable UUID objects (the UUID class) and the functions uuid1() , uuid3() , uuid4() , uuid5() for generating version 1 、3、4 和 5 个 UUID,如 RFC 4122 中所指定。

如果你想要的只是一个唯一的 ID,你应该调用 uuid1()uuid4()请注意, uuid1() 可能会损害隐私,因为它会创建一个包含计算机网络地址的 UUID。 uuid4() 创建一个随机的 UUID。

UUID 版本 6 和 7 - 用于现代应用程序和数据库的新通用唯一标识符 (UUID) 格式 ( 草稿) rfc - 可从 https://pypi.org/project/uuid6/

文件:

示例(适用于 Python 2 和 3):

 >>> import uuid

>>> # make a random UUID
>>> uuid.uuid4()
UUID('bd65600d-8669-4903-8a14-af88203add38')

>>> # Convert a UUID to a string of hex digits in standard form
>>> str(uuid.uuid4())
'f50ec0b7-f960-400d-91f0-c42a6d44e3d0'

>>> # Convert a UUID to a 32-character hexadecimal string
>>> uuid.uuid4().hex
'9fe2c4e93f654fdbb24c02b15259716c'

原文由 stuartd 发布,翻译遵循 CC BY-SA 4.0 许可协议

如果您使用的是 Python 2.5 或更高版本,则 uuid 模块 已包含在 Python 标准发行版中。

前任:

 >>> import uuid
>>> uuid.uuid4()
UUID('5361a11b-615c-42bf-9bdb-e2c3790ada14')

原文由 Jay 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题