Générer GUID/UUID en Python

Vaibhav Vaibhav 10 octobre 2023
Générer GUID/UUID en Python

UUID est un nombre de 128 bits utilisé dans les systèmes informatiques pour définir des entités ou des informations de manière unique. UUID est l’abréviation de Universally Unique Identifier. Dans les logiciels créés par Microsoft, l’UUID est considéré comme un identifiant ou GUID globalement unique.

Un UUID est basé sur deux quantités: l’horodatage du système et la propriété unique du poste de travail. Cette propriété unique peut être l’adresse IP (Internet Protocol) du système ou l’adresse MAC (Media Access Control).

Les UUID/GUID sont uniques par nature. En raison de cette propriété, ils sont largement utilisés dans le développement de logiciels et les bases de données pour les clés.

Générer UUID/GUID en Python

Pour générer un UUID/GUID en utilisant Python, nous utiliserons un package Python in-build uuid.

import uuid

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

Production:

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

Dans le code ci-dessus, la méthode uuid4() génère un UUID aléatoire. L’UUID retourné par cette fonction est de type uuid.UUID. Dans la sortie, au lieu de XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX, votre programme affichera une chaîne alphanumérique.

Vous pouvez le vérifier en exécutant cette commande - print(type(uuid.uuid4())). Il imprimera ce qui suit - <class 'uuid.UUID'>

Vous pouvez toujours convertir l’UUID renvoyé en chaîne. Reportez-vous au code suivant pour cela.

import uuid

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

Production:

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

Si vous souhaitez générer un UUID en fonction de l’heure actuelle de la machine et de l’ID d’hôte, dans ce cas, utilisez le bloc de code suivant.

import uuid

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

Production:

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

Pour en savoir plus sur uuid, reportez-vous à la documentation officielle

Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.