Developer's Center
Python

Generate a UUID in Python

Python, a popular interpreted, dynamically typed, and object-oriented programming language, offers built-in support for generating various versions of Universally Unique Identifiers (UUIDs). In this comprehensive guide, we will explore different methods to generate UUIDs in Python.

How to Generate a UUID in Python

Python's built-in uuid module provides functions to generate Version 1, 3, 4, and 5 UUIDs. Let's start with an example of generating a Version 4 UUID using Python code:

import uuid
 
myuuid = uuid.uuid4()
 
print('The UUID is: ' + str(myuuid))

Explanation

  • On line #1, we import Python's uuid module.
  • On line #3, we generate a new Version 4 UUID using the uuid.uuid4() function and store it in the variable myUuid. This creates an instance of Python's UUID class.
  • On line #5, we convert the UUID object to a string using the str function. The output will be something like:
The UUID is: 119D2163-F16A-47AF-9DF7-418D3AF1455A

Python's uuid module offers additional functions for generating other UUID versions (e.g., 1, 3, 4, and 5). The UUID class provides useful methods for converting UUIDs to bytes or a 32-character string representation.

Convert from a String to a UUID

In some cases, you may need to convert a string representation or byte representation of a UUID back into a UUID instance. Python's uuid module provides the uuid.UUID() constructor method for this scenario. Here's an example:

import uuid

myuuid = uuid.uuid4()
myuuidStr = str(myuuid)

sameMyUuid = uuid.UUID(myuuidStr)
assert myuuid == sameMyUuid

Explanation

  • Line #3 generates a new Version 4 UUID.
  • Line #4 converts the UUID instance into a string, using the str function.
  • Line #6 converts the string representation of a UUID into a Python UUID instance (sameMyUuid) using the uuid.UUID() method. Note that this method accepts a number of different formats, including strings and bytes.
  • Line #7 is included to show that the 2 UUID instances are equal.

Conclusion

Generating UUIDs in Python is made easy with the built-in uuid module. By following the examples and explanations provided in this guide, you can generate unique identifiers for your Python applications.

Remember to choose the UUID version that fits your requirements and explore the capabilities of the UUID class for additional functionality. Happy coding with Python and UUID generation!