How to create a GUID/UUID in Python
How to create a GUID/UUID in Python
The uuid module provides immutable UUID objects (the UUID class) and the functions
uuid1()
,uuid3()
,uuid4()
,uuid5()
for generating version 1, 3, 4, and 5 UUIDs as specified in RFC 4122.
If all you want is a unique ID, you should probably call
uuid1()
oruuid4()
. Note thatuuid1()
may compromise privacy since it creates a UUID containing the computer’s network address.uuid4()
creates a random UUID.
Docs:
Examples (for both Python 2 and 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
If youre using Python 2.5 or later, the uuid module is already included with the Python standard distribution.
Ex:
>>> import uuid
>>> uuid.uuid4()
UUID(5361a11b-615c-42bf-9bdb-e2c3790ada14)
How to create a GUID/UUID in Python
Copied from : https://docs.python.org/3/library/uuid.html (Since the links posted were not active and they keep updating)
>>> import uuid
>>> # make a UUID based on the host ID and current time
>>> uuid.uuid1()
UUID(a8098c1a-f86e-11da-bd1a-00112444be1e)
>>> # make a UUID using an MD5 hash of a namespace UUID and a name
>>> uuid.uuid3(uuid.NAMESPACE_DNS, python.org)
UUID(6fa459ea-ee8a-3ca4-894e-db77e160355e)
>>> # make a random UUID
>>> uuid.uuid4()
UUID(16fd2706-8baf-433b-82eb-8c7fada847da)
>>> # make a UUID using a SHA-1 hash of a namespace UUID and a name
>>> uuid.uuid5(uuid.NAMESPACE_DNS, python.org)
UUID(886313e1-3b8a-5372-9b90-0c9aee199e5d)
>>> # make a UUID from a string of hex digits (braces and hyphens ignored)
>>> x = uuid.UUID({00010203-0405-0607-0809-0a0b0c0d0e0f})
>>> # convert a UUID to a string of hex digits in standard form
>>> str(x)
00010203-0405-0607-0809-0a0b0c0d0e0f
>>> # get the raw 16 bytes of the UUID
>>> x.bytes
x00x01x02x03x04x05x06x07x08tnx0bx0crx0ex0f
>>> # make a UUID from a 16-byte string
>>> uuid.UUID(bytes=x.bytes)
UUID(00010203-0405-0607-0809-0a0b0c0d0e0f)