HOWTO · Python

Generar GUID/UUID en Python

Aprenda a generar un identificador único global(GUID) o un identificador único universal(UUID) en Python

En esta página

UUID es un número de 128 bits que se utiliza en los sistemas informáticos para definir entidades o información de forma única. UUID son las siglas de Universal Unique Identifier (Identificador único universal). En el software creado por Microsoft, UUID se considera un identificador único global o GUID.

Un UUID se basa en dos cantidades: la marca de tiempo del sistema y la propiedad única de la estación de trabajo. Esta propiedad única podría ser la dirección IP (Protocolo de Internet) del sistema o la dirección MAC (Control de acceso a medios).

Los UUID/GUID son únicos por naturaleza. Debido a esta propiedad, se utilizan ampliamente en el desarrollo de software y bases de datos para claves.

Generar UUID/GUID en Python

Para generar UUID/GUID usando Python, usaremos un paquete integrado de Python uuid.

import uuid

myUUID = uuid.uuid4()
print(f"UUID/GUID -> {myUUID}")

Producción :

UUID/GUID -> XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

En el código anterior, el método uuid4() genera un UUID aleatorio. El UUID devuelto por esta función es de tipo uuid.UUID. En la salida, en lugar de XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX, su programa generará una cadena alfanumérica.

Puede comprobarlo ejecutando este comando - print(type(uuid.uuid4())). Imprimirá lo siguiente - <class 'uuid.UUID'>

Siempre puede convertir el UUID devuelto en una cadena. Consulte el siguiente código para ello.

import uuid

myUUID = uuid.uuid4()
print(type(myUUID))
print(myUUID)
myUUIDString = str(myUUID)
print(type(myUUIDString))
print(myUUIDString)

Producción :

<class 'uuid.UUID'>
XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
<class 'str'>
XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

Si desea generar un UUID basado en la hora actual de la máquina y el ID de host, en ese caso, use el siguiente bloque de código.

import uuid

myUUID = uuid.uuid1()
print(f"UUID/GUID based on Host ID and Current Time -> {myUUID}")

Producción :

UUID/GUID based on Host ID and Current Time -> 
XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

Para obtener más información sobre uuid, consulte la documentación oficial