Python

Používanie UUID v Pythone

Používanie UUID v Pythone
Python má knižnicu s názvom UUID (univerzálny jedinečný identifikátor) na vygenerovanie náhodného objektu so 128 bitmi. Táto knižnica generuje jedinečné ID na základe systémového času a sieťovej adresy počítača. Objekt UUID je nemenný a obsahuje niektoré funkcie na vytvorenie rôznych jedinečných ID.  UUID sa používa na mnohé účely, napríklad na vytvorenie jedinečného náhodného ID, MAC adresy založenej na ID, kryptografických hashových hodnôt alebo náhodných dokumentov. Tento tutoriál vám ukáže, ako môžete vytvoriť rôzne typy knižníc UUID pomocou rôznych funkcií UUID.

Príklad 1: Vytvorte UUID na základe systémového času a adresy MAC

Nasledujúci príklad ukazuje použitie uuid1 () funkcia uuid modul na generovanie rôznych hodnôt UUID a na čítanie a tlač rôznych hodnôt vlastností objektu UUID. A UID objekt je definovaný volaním uuid1 () metóda na generovanie jedinečného id na základe systémového času a MAC adresy. Ďalej sa vytlačí normálne generované ID, zodpovedajúca hodnota bajtov, celočíselná hodnota a hexadecimálna hodnota ID.  Verzia, polia, uzol a časové vlastnosti ID sa potom vytlačia v ďalšej časti skriptu.

#!/ usr / bin / env python3
 
# Import modulu uuid
import uuid
 
# Vytvorte náhodné ID pomocou uuid1 ()
UID = uuid.uuid1 ()
 
# Vytlačte si bežné ID
print ("Normálna hodnota:", UID)
# Vytlačte ID bytu
print ("Hodnota bajtu:", repr (UID.bajtov))
# Vytlačte celé číslo ID
print ("Celá hodnota:", UID.int)
# Vytlačte hexadecimálne ID
print ("hexadecimálna hodnota:", UID.hex)
 
# Vytlačte číslo verzie
print ("Verzia je:", UID.verzia)
# Vytlačte hodnoty poľa
print ("Polia sú:", UID.polia)
# Vytlačte hodnotu MAC v hexadecimálnom formáte
print ("Hodnota uzla je:", hex (UID.uzol))
# Vytlačte hodnotu času
print ("Časová hodnota je:", UID.čas)

Výkon

Po spustení skriptu sa zobrazí nasledujúci výstup. Výstup ukazuje, že predvolená hodnota ID bola vygenerovaná v hexadecimálnom formáte oddelením jednotlivých častí spojovníkom. Posledná časť hodnoty ID obsahuje adresu MAC, ktorá bude vždy rovnaká. The uzol vlastnosť ID objektu obsahuje MAC adresu.

Príklad 2: Generujte hodnoty SHA-1 a MD5 názvu hostiteľa pomocou parametrov uuid3 () a uuid5 ()

Dôležitým využitím UUID je vytváranie kryptografických hašovacích hodnôt. uuid3 () a uuid5 () funkcie uuid sa používajú na generovanie MD5 a SHA-1 hodnoty. V nasledujúcom skripte je premenná n-tice s názvom hostitelia je deklarovaná tromi platnými adresami URL. Hodnoty n-tice sú iterované pomocou slučky for. The MD5 a SHA-1 hodnoty každej adresy URL sa potom vypočítajú a vytlačia v každej iterácii cyklu.

#!/ usr / bin / env python3
# import uuid modulu
import uuid
 
# Definujte n-ticu troch mien hostiteľa
hosts = ('www.linuxhint.com ',' www.google.com ',' www.fahmidasclassroom.com ')
 
# Iterovať hodnoty n-tice pomocou slučky
pre názov hostiteľa v hostiteľoch:
# Vytlačte si názov hostiteľa
print ("Názov hostiteľa:", názov hostiteľa)
# Použite uuid5 () na získanie hodnoty SHA-1
print ('\ tHodnota SHA-1:', uuid.uuid5 (uuid.NAMESPACE_DNS, názov hostiteľa))
# Použite uuid3 () na získanie hodnoty MD5
print ('\ tHodnota MD5:', uuid.uuid3 (uuid.NAMESPACE_DNS, názov hostiteľa))

Výkon

Po spustení skriptu sa zobrazí nasledujúci výstup.

Príklad 3: Vytvorte náhodné čísla pomocou uuid4 ()

Ak chcete generovať UUID náhodne, mali by ste použiť uuid4 () funkcia uuid modul. Nasledujúci skript vygeneruje päť UUID na základe náhodných hodnôt prostredníctvom uuid4 () metóda. The zatiaľ čo slučka sa tu používa na volanie súboru uuid4 () päťkrát a vytlačte náhodne vygenerované hodnoty UUID.

#!/ usr / bin / env python3
 
# import uuid modulu
import uuid
# Inicializujte premennú
i = 1
# Opakujte slučku päťkrát
kým<6):
# Vygenerujte náhodné číslo
print ("Nie-", i, ", uuid.uuid4 ())
# Zvýšiť hodnotu o jednu
i = i + 1

Výkon

Po spustení skriptu sa zobrazí nasledujúci výstup. Ak spustíte skript viackrát, vygeneruje rôzne UUID v rôznych časoch.

Príklad 4: Vytvorte zoradené UUID zo zoznamu pomocou objektu UUID

Nasledujúci skript ukazuje, ako môžete previesť položky zoznamu na UUID a vytlačiť hodnoty po zoradení. Tu je zoznam_id premenná je deklarovaná so štyrmi položkami zoznamu, kde každá hodnota položky musí byť v platnom formáte UUID. Po prvé, pôvodné hodnoty zoznam_id sú vytlačené. Ďalej sa každá hodnota položky v zozname prevádza na UUID pomocou slučky v skús blokovať. Ak zoznam_id obsahuje ľubovoľnú hodnotu položky, ktorá sa nezhoduje s formátom UUID, potom a ValueError vygeneruje sa výnimka a vytlačí sa chybové hlásenie. Pokiaľ sa v čase prevodu nevyskytne žiadna chyba, prevedené UUID sa roztriedia podľa sort () metóda. Ďalej sa zoradené hodnoty UUID vytlačia pomocou znaku pre slučka.

#!/ usr / bin / env python3
# import uuid modulu
import uuid
 
# Vytvorte zoznam ID platného formátu
list_Ids = [
„a4f8dd97-c8be-345b-239e-8a68e6abf800“,
„673a5eaa-56c6-aaaa-bc45-4536cd9067ac“,
„dcbbaa88-5bf1-11dd-ab48-990ab200d674“,
„4567aabb-89ad-77ab-67ad-aaaccdd904ae“
]
 
# Vytlačte hodnoty zoznamu pomocou slučky
print ('\ nHodnoty zoznamu:')
pre val v zozname_ID:
tlač (val)
 
# Hodnoty zoznamu sa prevedú na uuidy a zoradia sa
skúste:
uuids = [uuid.UUID pre s v list_Ids]
uuids.sort ()
print ('\ nHodnoty zoradených uuidov:')
pre val v uuids:
tlač (val)
okrem ValueError:
# Tlačte chybové hlásenie, ak je ktorákoľvek hodnota zo zoznamu v neplatnom formáte
print ('Chybne tvarovaný hexadecimálny reťazec UUID')

Výkon

Po spustení skriptu sa zobrazí nasledujúci výstup. Tu sú všetky položky v zozname v správnom formáte UUID. Takže nebude vygenerovaná žiadna ValueError. Prvá časť výstupu tlačila pôvodné položky zoznamu a druhá časť výstupu tlačila zoradené hodnoty UUID.

Záver

Možno budete musieť generovať UUID v Pythone na rôzne programovacie účely. Tento výukový program vám ukázal, ako generovať rôzne UUID pomocou rôznych metód. Po prečítaní tohto článku a precvičení priložených príkladov by ste mali byť schopní vytvárať UUID podľa vašich programátorských potrieb.

Hry Užitočné nástroje pre hráčov systému Linux
Užitočné nástroje pre hráčov systému Linux
Ak radi hráte hry v systéme Linux, je pravdepodobné, že ste na vylepšenie herného zážitku použili aplikácie a pomôcky ako Wine, Lutris a OBS Studio. O...
Hry HD remasterované hry pre Linux, ktoré nikdy predtým nemali vydanie Linuxu
HD remasterované hry pre Linux, ktoré nikdy predtým nemali vydanie Linuxu
Mnoho vývojárov a vydavateľov hier prichádza s remastrom starých hier v rozlíšení HD, aby predĺžili životnosť franšízy. Prosím fanúšikov, ktorí požadu...
Hry Ako používať AutoKey na automatizáciu hier pre Linux
Ako používať AutoKey na automatizáciu hier pre Linux
AutoKey je obslužný program na automatizáciu stolných počítačov pre systémy Linux a X11, programovaný v programoch Python 3, GTK a Qt. Pomocou jeho fu...