Genera GUID/UUID in Python

Vaibhav Vaibhav 22 giugno 2021
Genera GUID/UUID in Python

UUID è un numero a 128 bit utilizzato nei sistemi informatici per definire entità o informazioni in modo univoco. UUID sta per Universally Unique Identifier. Nel software creato da Microsoft, l’UUID è considerato un identificatore univoco globale o GUID.

Un UUID si basa su due quantità: il timestamp del sistema e la proprietà univoca della workstation. Questa proprietà univoca potrebbe essere l’indirizzo IP (Internet Protocol) del sistema o l’indirizzo MAC (Media Access Control).

Gli UUID/GUID sono unici per natura. A causa di questa proprietà, sono ampiamente utilizzati nello sviluppo di software e nei database per le chiavi.

Genera UUID/GUID in Python

Per generare UUID/GUID usando Python, useremo un pacchetto in-build Python uuid.

import uuid

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

Produzione:

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

Nel codice precedente, il metodo uuid4() genera un UUID casuale. L’UUID restituito da questa funzione è di tipo uuid.UUID. Nell’output, invece di XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX, il tuo programma produrrà una stringa alfanumerica.

Puoi verificarlo eseguendo questo comando - print(type(uuid.uuid4())). Verrà stampato quanto segue - <class 'uuid.UUID'>

Puoi sempre convertire l’UUID restituito in stringa. Fare riferimento al codice seguente per questo.

import uuid

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

Produzione:

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

Se si desidera generare un UUID in base all’ora corrente della macchina e all’ID host, in tal caso, utilizzare il seguente blocco di codice.

import uuid

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

Produzione:

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

Per ulteriori informazioni su uuid, fare riferimento alla documentazione ufficiale

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.