„Python“

UUID naudojimas „Python“

UUID naudojimas „Python“
„Python“ turi biblioteką pavadinimu UUID (universalus unikalus identifikatorius) generuoti atsitiktinį 128 bitų objektą. Ši biblioteka sukuria unikalius ID pagal sistemos laiką ir kompiuterio tinklo adresą. UUID objektas yra nekintamas ir jame yra keletas funkcijų, leidžiančių sukurti įvairius unikalius ID.  UUID naudojamas įvairiems tikslams, pvz., Unikaliam atsitiktiniam ID, ID pagrįstam MAC adresui, kriptografinėms maišos reikšmėms ar atsitiktiniams dokumentams kurti. Ši pamoka parodys, kaip galite sukurti įvairių tipų UUID bibliotekas naudodami skirtingas UUID funkcijas.

1 pavyzdys: sukurkite UUID pagal sistemos laiką ir MAC adresą

Šis pavyzdys rodo uuid1 () funkcija uuid modulis, skirtas generuoti įvairias UUID reikšmes ir skaityti bei atspausdinti skirtingas UUID objekto ypatybes. A UID objektas apibrėžiamas iškviečiant uuid1 () metodas sukurti unikalų ID, pagrįstą sistemos laiku ir MAC adresu. Tada atspausdinama paprastai sugeneruota ID, atitinkama baitų reikšmė, sveiko skaičiaus ir šešioliktainė ID reikšmė.  Tada ID versija, laukai, mazgas ir laiko ypatybės spausdinami kitoje scenarijaus dalyje.

#!/ usr / bin / env python3
 
#Import uuid module
importuoti uuid
 
# Sukurkite atsitiktinį ID naudodami uuid1 ()
UID = uuid.uuid1 ()
 
# Atspausdinkite įprastą ID
spausdinti ("Normalioji vertė:", UID)
# Atspausdinkite baito ID
spausdinti ("Baito reikšmė:", repr (UID.baitai))
# Atspausdinkite sveiko skaičiaus ID
spausdinti ("Sveiko skaičiaus reikšmė:", UID.int)
# Atspausdinkite šešiakampį ID
spausdinti ("Hex reikšmė:", UID.šešiakampis)
 
# Atspausdinkite versijos numerį
spausdinti ("Versija yra:", UID.versija)
# Atspausdinkite lauko reikšmes
spausdinti ("Laukai yra:", UID.laukai)
# Atspausdinkite MAC vertę šešiakampėmis
print ("Mazgo reikšmė yra:", šešioliktainis (UID.mazgas))
# Spausdinkite laiko vertę
spausdinti ("Laiko reikšmė yra:", UID.laikas)

Rezultatas

Ši išvestis pasirodys paleidus scenarijų. Išvestis rodo, kad numatytoji ID reikšmė buvo sugeneruota šešioliktainiu formatu, atskiriant atskiras dalis brūkšneliu. Paskutinėje ID vertės dalyje yra MAC adresas, kuris visada bus tas pats. The mazgas ID objekto ypatybėje yra MAC adresas.

2 pavyzdys: generuokite pagrindinio kompiuterio pavadinimo SHA-1 ir MD5 reikšmes naudodami uuid3 () ir uuid5 ()

Svarbus UUID naudojimas yra sukurti kriptografines maišos reikšmes. uuid3 () ir uuid5 () funkcijos uuid modulis yra naudojami generuoti MD5 ir SHA-1 vertybes. Šiame scenarijuje nurodytas dvigubas kintamasis šeimininkai yra deklaruojamas su trimis galiojančiais URL adresais. Kartelio reikšmės kartojamos naudojant „for“ kilpą. The MD5 ir SHA-1 Tada kiekvieno URL vertės apskaičiuojamos ir spausdinamos kiekvienoje ciklo iteracijoje.

#!/ usr / bin / env python3
# importuoti naujid modulį
importuoti uuid
 
# Apibrėžkite trijų prieglobos pavadinimų porą
kompiuteriai = ('www.linuxhint.com “,„ www.google.com “,„ www.fahmidasclassroom.com ')
 
# Pakartokite reikšmes naudodami kilpą
pagrindinio kompiuterio vardui pagrindiniuose kompiuteriuose:
# Atspausdinkite pagrindinio kompiuterio pavadinimą
spausdinti („Hostname:“, hostname)
# Norėdami gauti SHA-1 vertę, naudokite uuid5 ()
print ('\ t SHA-1 reikšmė:', uuid.uuid5 (uuid.NAMESPACE_DNS, pagrindinio kompiuterio vardas))
# Norėdami gauti MD5 reikšmę, naudokite uuid3 ()
print ('\ t MD5 reikšmė:', uuid.uuid3 (uuid.NAMESPACE_DNS, pagrindinio kompiuterio vardas))

Rezultatas

Ši išvestis pasirodys paleidus scenarijų.

3 pavyzdys: sukurkite atsitiktinius skaičius naudodami uuid4 ()

Jei norite generuoti UUID atsitiktinai, turėtumėte naudoti uuid4 () funkcija uuid modulis. Šis scenarijus sugeneruos penkis UUID pagal atsitiktines reikšmes per uuid4 () metodas. The kol kilpa čia naudojama norint iškviesti uuid4 () metodą penkis kartus ir atspausdinkite atsitiktinai sugeneruotas UUID reikšmes.

#!/ usr / bin / env python3
 
# importuoti naujid modulį
importuoti uuid
# Inicializuokite kintamąjį
i = 1
# Kartoti kilpą penkis kartus
kol aš<6):
# Sukurkite atsitiktinį skaičių
spausdinti ("Ne-", i, ", uuid.uuid4 ()
# Padidinkite vertę vienu
i = i + 1

Rezultatas

Ši išvestis pasirodys paleidus scenarijų. Jei scenarijų vykdysite kelis kartus, jis generuos skirtingus UUID skirtingu laiku.

4 pavyzdys: sukurkite surūšiuotą UUID iš sąrašo naudodami objektą UUID

Šis scenarijus parodo, kaip galite konvertuoti sąrašo elementus į UUID ir išspausdinti reikšmes po rūšiavimo. Čia, sąrašas_idai kintamasis yra deklaruojamas su keturiais sąrašo elementais, kur kiekvieno elemento vertė turi būti tinkamo UUID formato. Pirma, pirminės sąrašas_idai yra atspausdinti. Tada kiekviena sąrašo elemento vertė yra konvertuojama į UUID, naudojant bandyti blokuoti. Jei sąrašas_idai yra bet kokia elemento vertė, neatitinkanti UUID formato, tada a „ValueError“ bus sukurta išimtis ir bus išspausdintas klaidos pranešimas. Jei konversijos metu klaida neįvyksta, konvertuoti UUID rūšiuojami naudojant rūšiuoti () metodas. Tada surūšiuotos UUID reikšmės spausdinamos naudojant dėl kilpa.

#!/ usr / bin / env python3
# importuoti naujid modulį
importuoti uuid
 
# Sukurkite tinkamo formato ID sąrašą
list_Ids = [
„a4f8dd97-c8be-345b-239e-8a68e6abf800“,
„673a5eaa-56c6-aaaa-bc45-4536cd9067ac“,
„dcbbaa88-5bf1-11dd-ab48-990ab200d674“,
„4567aabb-89ad-77ab-67ad-aaaccdd904ae“
]
 
# Spausdinkite sąrašo reikšmes naudodami kilpą
spausdinti ('\ nSąrašo vertės:')
for val in list_Ids:
spausdinti (val)
 
# Sąrašo vertės bus konvertuotos į naujus ir surūšiuotos
bandyti:
uuids = [uuid.UUID (s), esantis sąraše „ID“]
uuids.rūšiuoti ()
spausdinti ('\ nRūšiuotų naujovių reikšmės:')
už val in uuids:
spausdinti (val)
išskyrus „ValueError“:
# Spausdinti klaidos pranešimą, jei kuri nors sąrašo reikšmė yra netinkamo formato
spausdinti ('Blogai suformuota šešioliktainė UUID eilutė')

Rezultatas

Ši išvestis pasirodys paleidus scenarijų. Čia visi sąrašo elementai yra teisingo UUID formato. Taigi, „ValueError“ nebus sugeneruota. Pirmoji išvesties dalis atspausdino originalius sąrašo elementus, o antroji išvesties dalis - rūšiuojamas UUID reikšmes.

Išvada

Jums gali tekti generuoti UUID „Python“ įvairiais programavimo tikslais. Ši pamoka parodė, kaip generuoti įvairius UUID naudojant įvairius metodus. Perskaitę šį straipsnį ir praktikuodami pridedamus pavyzdžius, turėtumėte sugebėti sukurti UUID pagal savo programavimo poreikius.

5 populiariausi „Linux“ skirtų ergonomiškų kompiuterinių pelių produktai
Ar ilgalaikis kompiuterio naudojimas sukelia riešo ar pirštų skausmą?? Ar jūs kenčiate nuo sąnarių standumo ir nuolat turite paspausti rankas? Ar jauč...
How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...
Peržiūrėkite pelės mygtukus skirtingai programinei įrangai naudodami „X-Mouse Button Control“
Galbūt jums reikia įrankio, kuris galėtų pakeisti jūsų pelės valdymą kiekvienoje jūsų naudojamoje programoje. Tokiu atveju galite išbandyti programą, ...