Gerar GUID/UUID em Python
UUID é um número de 128 bits usado em sistemas de computador para definir entidades ou informações de forma exclusiva. UUID significa Universally Unique Identifier. No software criado pela Microsoft, o UUID é considerado um Identificador Globalmente Único ou GUID.
Um UUID é baseado em duas quantidades: o carimbo temporal do sistema e a propriedade exclusiva da estação de trabalho. Esta propriedade exclusiva pode ser o endereço IP (Internet Protocol) do sistema ou o endereço MAC (Media Access Control).
UUIDs/GUIDs são exclusivos por natureza. Por causa dessa propriedade, eles são amplamente usados no desenvolvimento de software e bancos de dados para chaves.
Gerar UUID/GUID em Python
Para gerar UUID/GUID usando Python, usaremos um pacote python integrado uuid
.
import uuid
myUUID = uuid.uuid4()
print(f"UUID/GUID -> {myUUID}")
Resultado:
UUID/GUID -> XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
No código acima, o método uuid4()
gera um UUID aleatório. O UUID retornado por esta função é do tipo uuid.UUID
. Na saída, em vez de XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
, seu programa produzirá uma string alfanumérica.
Você pode verificar isso executando este comando - print(type(uuid.uuid4()))
. Irá imprimir o seguinte - <class 'uuid.UUID'>
Você sempre pode converter o UUID retornado em string. Consulte o código a seguir para isso.
import uuid
myUUID = uuid.uuid4()
print(type(myUUID))
print(myUUID)
myUUIDString = str(myUUID)
print(type(myUUIDString))
print(myUUIDString)
Resultado:
<class 'uuid.UUID'>
XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
<class 'str'>
XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
Se você deseja gerar um UUID com base na hora atual da máquina e na ID do host, nesse caso, use o seguinte bloco de código.
import uuid
myUUID = uuid.uuid1()
print(f"UUID/GUID based on Host ID and Current Time -> {myUUID}")
Resultado:
UUID/GUID based on Host ID and Current Time ->
XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
Para saber mais sobre uuid
, consulte a documentação oficial